Сайт использует сервис веб-аналитики Яндекс Метрика с помощью технологии «cookie». Пользуясь сайтом, вы даете согласие на использование данной технологии.
Всё про Binary Search. Тотальный гайд для собеса в IT и Leetcode алгоритмов (уникальный из практики)
Telegram Post: Telegram: Leetcode: GitHub: C++: Py: Go: Все, кто частенько сталкивался с проблемой адекватного объяснения Binary Search с упором на практику, а не "скопировать код с рандомного туториала, написать простенький поиск, добавить, что ты сеньор и закончить на этом." :) А когда начинаешь применять на практике, оказывается, что условия окончания цикла могут меняться. То это less or equal, то less, то not equal и т.д. То lo less or equal hi, то lo less hi, то lo + 1 less hi. Дебажил бесконечные циклы, потому что lo или hi вычисляются в одно и то же значение. В таких случаях обычно начинается что-то на сеньорно-великом "алгоритмы херня и не нужны нигде". Этого всего можно легко избежать и забыть. В видео я описал максимально подробно единственный универсальный механизм для Binary Search и все необходимые паттерны, которые можно встретить на практике - в жизни, на Leetcode, на работе. То, к чему я пришел со временем. Теперь это не какой-то странный алгоритм для дебаггинга, а красивый и приятный способ решать разного рода задачи. Привел примеры этого шаблона на просто огромном количестве задач от easy до hard. Задачи очень детально не стал объяснять, но видно, что паттерны одни и те же, шаблон один и тот же; главное и единственное теперь - увидеть, как можно поделить наш scope и декомпозировать задачу, а не воевать с имплементацией Binary Search. Попытайтесь увидеть мой ход мыслей и решить самостоятельно. Так вы очень быстро научитесь их решать by practice. Встречается Binary Search чрезвычайно часто. Усилий приложил довольно много; надеюсь, кому-то это причинит какую-то пользу :) Алгоритмы - это интересно и не сложно. Пробуем решать задачи на Leetcode, разговариваем, наглядно рисуем решения, узнаем что-то новое. Порешать: