Алгоритмы для разработчиков. Часть 4 из 4

68 участников

О чём курс

Алгоритмы и структуры данных — это база, которая не устаревает и позволяет писать код, работающий быстрее и стабильнее независимо от выбранного стека технологий. Материал ориентирован на глубокое понимание принципов работы программ «под капотом»: от оценки сложности операций через O-нотацию до написания собственных реализаций деревьев и графов. Вы освоите способы оптимизации кода с помощью хеш-таблиц, динамического программирования и эффективных алгоритмов сортировки. В результате вы научитесь подбирать оптимальные инструменты для решения задач с учетом затрат памяти и времени исполнения, что критически важно при работе с высоконагруженными системами.

Программа обучения

  • Введение в алгоритмы (20 часов)
    • Понятие сложности алгоритма. O-нотация. Оценка времени исполнения программы.
  • Основные структуры данных (20 часов)
    • Массив, связный список, стек, очередь.
    • Сложность операций вставки, поиска и удаления.
    • Представление данных в памяти. Пространственная сложность алгоритма.
  • Рекурсия (5 часов)
    • Понятие рекурсии. Принцип «разделяй и властвуй». Бинарный поиск.
  • Сортировки (15 часов)
    • Квадратичные сортировки. Сортировка слиянием. Быстрая сортировка. Линейная сортировка подсчётом.
  • Хеш-функции и хеш-таблицы (20 часов)
    • Абстракция отображения. Понятие и свойства хеш-функции.
    • Структура данных хеш-таблица. Коллизии и способы их разрешения.
  • Деревья (20 часов)
    • Структура данных дерево. Сбалансированные деревья поиска. Структура данных куча. Пирамидальная сортировка.
  • Графы (20 часов)
    • Определение графа, способы представления в памяти.
    • Обход графа в глубину и в ширину. Компоненты связности. Алгоритмы поиска кратчайшего пути. Минимальное остовное дерево.
  • Динамическое программирование (15 часов)
    • Определение, одномерные и двумерные задачи.
    • Динамическое программирование по подотрезкам и по подмножествам.
  • Жадные алгоритмы (5 часов)
    • Понятие жадного алгоритма, область применения. Доказательство корректности алгоритма.
  • Алгоритмы на строках (20 часов)
    • Префикс-функция. Подстроки, префиксы и суффиксы.
    • Поиск шаблона в строке. Наивный алгоритм. Структура данных бор.
Складчина создана 23 августа 2021 г. · описание обновлено 23 марта 2026 г.

Другие материалы школы 12

ЯП Яндекс Практикум Все материалы
348 ₽ 10 400 ₽