Четыре самые популярные лекции Максима Бабенко 📚 Максим Бабенко — руководитель службы разработки YT (MapReduce-системы Яндекса), заместитель директора отделения компьютерных наук ШАДа, кандидат физ.-мат. наук, доцент кафедры алгоритмов и технологий программирования МФТИ и заведующий базовой кафедрой Яндекса на ФКН. Но для нас важнее всего, что Максим преподаёт в ШАДе со дня его основания, то есть уже 14-й год подряд. Попытка рассказать обо всех выложенных в интернет лекциях Максима обречена на провал: только этот плейлист https://ya.cc/t/wdIuN3UeANYgb насчитывает 106 роликов (спасибо Елене Силкиной за то, что она собрала все эти лекции вместе!). Мы отобрали четыре самых популярных выступления — по количеству просмотров в онлайне. Ожидаемо: три видео из четырёх сняты на курсе «Алгоритмы и структуры данных поиска» в ШАДе. Чаще всего начинающих математиков и разработчиков интересует вступление к этому курсу, цель которого — привить базовую грамотность в алгоритмах, понимание того, какие они бывают, что такое эффективный алгоритм и как его спроектировать. Первая лекция покрывает большой набор тем, начиная с памяти, времени, O-символики и заканчивая массивами переменного размера. https://youtu.be/5qmYaOoHX8A Также в топе по просмотрам находится третья лекция курса об алгоритмах. В ней Максим объясняет детали метода «разделяй и властвуй», учит выполнять разные сортировки. Но пожалуй, самое важное в ней (наверняка в этом кроется причина её популярности) — рассказ об оценке сложности алгоритмов. Чтобы проходить собеседования в крупные IT-компании, чтобы участвовать в соревнованиях по программированию, нужно уметь сходу определять сложность своих программ. Ошибки в этом часто подводят кандидатов в Яндекс и становятся причиной неудачных интервью. https://youtu.be/r5bwNDngKJ0 Часто используемая структура данных в задачах, связанных с поиском, — это дерево поиска. Структура настолько распространена, что почти каждый разработчик (возможно, сам того не подозревая) регулярно её использует в составе объектов своего языка программирования. Видео начинается с определения search tree — постепенно Максим доходит до вставки и других операций, которые можно производить с деревом. https://youtu.be/2OyS4tW3xuQ В четвёрку самых популярных выступлений Максима входит одна лекция, которую он прочитал не в ШАДе, а в Computer Science клубе при институте ПОМИ РАН. Причём прочитал ещё в 2011 году. Вы узнаете всё о линейном программировании (ЛП). Это метод решения задачи оптимизации, в которой все переменные — вещественные и на них наложены линейные условия. У задач ЛП есть две формы (стандартная и каноническая) — Максим объясняет, чем они отличаются, рассказывает о разрешимости задач за конечное время и разных концепциях, связанных с линейным программированием. ЛП используют в первую очередь математики, но инженерам этот метод тоже пригождается — например, в маршрутизации объектов и планировании любых операций. https://youtu.be/S4qfQ5VHvLg

Теги других блогов: лекции Максим Бабенко ШАД