[HTML Academy] Онлайн-курс «Алгоритмы и структуры данных» (2022)
Правильное использование структур данных и алгоритмов позволяет писать более эффективный код, правильно выстраивать архитектуру проекта и отдельных модулей.
Правильно выбирая алгоритмы и структуры данных, вы сможете использовать верный формат для хранения данных, быстро фильтровать их и искать, что позволит вам решать такие задачи, как:
Обход деревьев для понимания принципа работы шаблонизаторов
Алгоритм подбора ревьюеров в пул-реквест
Фильтрация дубликатов на 100 000 позиций
Парсинг данных
Хранение и вывод оповещений для пользователя
И многие другие
Программа курса:
Раздел 1 Общие знания
Знакомство с системой оценки эффективности алгоритмов и важностью её оптимизации
Раздел 2 Структуры данных
Введение во встроенные структуры данных и демонстрация того, насколько хранение данных в правильном формате упрощает задачи
Раздел 3 Поиск
Рассмотрим самые популярные алгоритмы поиска
Раздел 4 Разделяй и властвуй
Рассмотрим парадигму решения алгоритмических задач «Разделяй и властвуй» и познакомимся с рекурсией
Раздел 5 Сортировки
Познакомимся с несколькими популярными алгоритмами сортировок и оценим их сложность
Раздел 6 Деревья
Узнаем о графах и деревьях, а также о том, что мы все с ними уже работали
Раздел 7 Хеш-таблицы
Чуть лучше узнаем Map и как он работает
Раздел 8 Стек и очередь
Вспомним про стек и посмотрим на его применение внутри языка, а также посмотрим на задачи, решаемые очередью
Раздел 9 Жадные алгоритмы
Разберём ещё одну концепцию для решения алгоритмических задач и посмотрим на классические задачи, которые она решает
Раздел 10 Динамическое программирование
Дополним решение задачи из прошлого раздела новыми идеями!