5.9Kпросмотров
27 июня 2024 г.
Score: 6.5K
В последнее время я довольно часто хожу на собеседования. Каждая первая, плюс-минус крупная компания (MAANG, Сбер, Т-банк, Яндекс и тд), имеет хотя бы один этап, содержащий алгоритмические задачи (в простонародье - литкод или алгосы). Этот этап по праву считается самым нелюбимым у кандидатов, но в то же время он, на мой взгляд, самый простой и понятный по процессу подготовки к нему. Как писал Yorko на своем канале, сейчас чаще спрашивают только easy задачи и редко middle. Регулярно решая задачи, постепенно начинаешь понимать закономерности, и становится легче. Количество решенных задач фиксируется в статистике сайта, и появляется ясное понимание прогресса подготовки. В отличие от той же теории МЛ, где читаешь и пытаешься вспомнить все подряд, от чего в голове может начаться каша. Хочу поделиться с вами, как готовиться к этим алгоритмам. Как в целом подходить к этим задачам: 1. Сначала внимательно прочитайте условие, попытайтесь понять, что от вас хотят и в каком виде.
2. Затем попытайтесь решить задачу самостоятельно. Всегда стоит начать с самого простого метода — перебора, пусть даже это будут 4 вложенных цикла.
3. Затем попытайтесь сделать что-то более оптимальное. Подумайте, какие структуры данных или алгоритмы можно применить к этой задаче.
4. На этом этапе уже можно найти и посмотреть видео с разбором решения. Как только там объяснили алгоритм на словах/картинках, попытайтесь снова зайти в редактор и реализовать то, что вам объяснили словами. Если совсем не получается, досмотрите видео и по памяти реализуйте только что увиденный код. Ресурсы: 1. Как ни странно — LeetCode. Заходите в планы обучения — Study Plan, выбирайте тот, который нравится, и вперёд.
2. Также очень хорош NeetCode и его roadmap.
3. Мне нравятся стримы, где люди решают задачи в режиме онлайн. Можно наблюдать, как они думают и какие ошибки делают. Вот хороший пример такого видео: https://www.youtube.com/watch?v=Pp84Sv041xA (Глеб привет!) upd: Еще хороший пост про с материалам про алгосы от @asisakov - https://t.me/asisakov_channel/141 Понимаю, что это далеко неисчерпывающий список, а если вы еще и не торопитесь и у вас есть несколько месяцев на подготовку, можно найти какой нибудь курс по алгоритмам (например лекции Хирьянова Т. на ютубе или купить на том же литкоде) чтобы более систематично и последовательно все это изучить, а не прыгать в омут с головой. И помните, не везде просят алгосы на собеседованиях, но если вы не хотите отбрасывать все компании, где их все же просят, то придется заморочиться…