Как практиковаться в технических раундах собеседования?

Опубликовано: 19 Июня, 2021

Собираясь на собеседование , интервьюер может спросить все, что угодно. Вы должны быть готовы к собеседованию во всех отношениях, будь то резюме, навыки программирования, умение одеваться и жесты. Есть много вещей, которые нужно подготовить к проведению различных раундов. Самый важный раунд в собеседовании - это технический раунд. И многие технические раунды сосредоточены на вопросах программирования. В большинстве случаев вам будут предлагать ручку и бумагу и предлагать алгоритм решения вопроса, а затем код.

Чтобы пройти технический раунд, вы должны отработать задачу точно так, как вы будете на собеседовании. Если следовать систематическому подходу и практиковаться в нем, вы сможете не только решить эти проблемы, но и решить многие другие в ходе его собеседования. Вот несколько шагов, которые вы должны выполнить:

1. Понять проблему

Хотя это кажется очевидным, но обычно этот шаг пропускается. Очень важно четко понять проблему, прежде чем пытаться ее решить. Если вы не поняли, прочтите это еще раз, пока не поймете проблему.
Например: многие интервьюеры задают вопрос, чтобы перевернуть связанный список, и большинство людей тратят много времени на обход и изменение указателей, вместо того, чтобы использовать простое решение на основе стека.
Понимание того, что именно вас просят, является ключом к вашему успеху. Задайте любой уточняющий вопрос, который кажется необходимым (интервьюеру во время интервью и себе во время практики).

Время для ваших орлиных глаз: обратите внимание на входы, выходы (в данном примере) и ограничения, возможно, вам придется посмотреть пару раз. Затем найдите критические и крайние случаи и добавьте эти случаи в свои примеры.

2. Найдите решение методом грубой силы

Важно, чтобы вы начали с решения методом грубой силы. Слишком много людей пытаются ухватиться за оптимизированное решение и теряются. В этот момент вам может быть очень трудно восстановиться, не начав с самого начала, а на собеседовании у вас нет времени начинать все с самого начала.

Решение методом грубой силы позволяет вам действительно понять проблему, не беспокоясь об оптимизации вашего решения. Вы знаете, каким будет ваш ввод и как именно его нужно изменить, чтобы получить результат. Теперь у вас тоже есть решение. Даже плохое решение лучше, чем отсутствие решения.

И последнее, но не менее важное: решение методом грубой силы дает вам отправную точку, с которой вы можете оптимизировать свой код. Если у вас есть решение методом грубой силы, вы можете использовать множество различных методов для улучшения вашей временной и пространственной сложности (вы можете придумать решение с использованием динамического программирования или какой-либо более эффективной структуры данных).

3. Оптимизируйте свой код

Вот ступенька, на которой можно сиять, выходить из толпы. Это шаг, на котором у вас есть шанс сделать свой алгоритм максимально эффективным.

Здесь есть множество подходов, которые вы можете попробовать, будь то использование более эффективной структуры данных или использование динамического программирования, глядя на дублирующиеся (повторяющиеся) задачи в вашем коде. Или вы можете предложить новое, более эффективное решение, не связанное с перебором.

Помните , что это шаг, на котором вы можете выйти из толпы и сиять. Обычно на собеседовании интервьюеры обычно помогают вам придумать лучшее решение некоторыми подсказками, вам нужно воспользоваться этой возможностью.

4. Закодируйте решение

К настоящему времени вы выполнили всю работу с ногами, все инструменты заточены. Теперь кодирование должно быть легкой задачей. Но для этого нужно много практики. Практикуйтесь как можно больше. Задавайте практические вопросы до решения кодирования. В основном, люди задаются вопросом после того, как поняли логику. Чем больше вы практикуетесь в написании кода, тем легче вам будет на собеседовании.

5. Проверьте свое решение.

Это последний и очень важный шаг. В большинстве случаев люди слишком самоуверенны (или, возможно, нервничают), они не тестируют там решение и не показывают интервьюеру.
Проверка вашего решения даст уверенность в правильности вашего решения. Вы можете с уверенностью сказать: «Да! мое решение правильное ».

Но как проверить решение?

Просто просматривайте свой код построчно, потому что это гарантирует, что ваш код не будет содержать простых опечаток и ошибок индексации. Эти ошибки могут оставить у интервьюера дурной вкус, даже если вы хорошо справились.

Еще одна важная вещь : при написании кода убедитесь, что он должен быть чистым и легким для понимания . Интервьюеру не нужно спрашивать, что означает эта линия и к чему она принадлежит.

Во время интервью нет повода нервничать. Даже если вы застряли, следуя инструкциям, вы можете найти какое-то решение. Для этого есть только один ключ для решения вопросов программирования, то есть практика . Чем больше вы тренируетесь, тем лучше вы будете выступать.

Полезные ссылки:

  • Практика взлома Coding Interviews
  • Обязательно задавать вопросы для продуктовых компаний

Кроме того, вы можете написать о своем опыте собеседования на GeeksForGeeks.