Алгоритмы и структуры данных I. Базовый поток 2026
О курсе
Алгоритмы и структуры данных
1 курс, осенний семестр
Курс посвящён анализу алгоритмов и базовым структурам данных. В течение семестра студенты изучают асимптотический анализ, рекуррентные соотношения, поиск и сортировки, пирамиды, списки, деревья поиска, амортизационный анализ и динамическое программирование. Основной акцент сделан на понимании принципов работы алгоритмов, оценке их временной сложности и умении реализовывать изученные подходы при решении задач.
Пререквизиты
- Базовые знания математики.
- Базовые знания и навыки работы с алгоритмами.
Команда курса
Лектор курса: Никулов Сергей.
Семинаристы: Мусаев Садык, Середа Андрей, Якушева София, Старокожко Иван, Бунин Лев.
Программа курса
| Неделя | Лекция | Семинар | 1 | Практика и задачи по теме лекции. | - | 2 | Практика и задачи по теме лекции. | - | 3 | Квадратичные сортировки. Сортировки выбором, вставками и пузырьком. Реализация, время работы и доказательство. | Практика и задачи по теме лекции. | - | 4 | Merge sort (сортировка слиянием). Сортировка слиянием с дополнительной памятью и Inplace. Реализация и анализ времени работы. | Практика и задачи по теме лекции. | - | 5 | Быстрая сортировка (Quicksort). Реализация. Разбиение Ломуто и Хоара. Доказательство времени работы. Барьер Ω(n log n) (б/д). | Практика и задачи по теме лекции. | - | 6 | Пирамидная сортировка (HeapSort). Бинарная пирамида. SiftUp и SiftDown. Построение пирамиды, пирамидальная сортировка и анализ времени работы. | Практика и задачи по теме лекции. | - | 7 | Лист. Стек. Очередь. Односвязные и двусвязные списки. Стек и очередь. Реализация на списках. | Практика и задачи по теме лекции. | - | 8 | Бинарное дерево поиска. Способы обхода. Поиск, вставка и удаление элемента. Анализ времени работы. | Практика и задачи по теме лекции. | - | 9 | AVL-дерево. Анализ высоты AVL-дерева. Balance-фактор. Повороты. Поиск, вставка и удаление элементов. Анализ времени работы. | Практика и задачи по теме лекции. | - | 10 | Амортизационный анализ. Методы подсчёта, банковский метод и метод потенциалов. Очередь на двух стеках. Двоичный счётчик. | Практика и задачи по теме лекции. | - | 11 | Splay-дерево. Повороты. Splay, Split и Merge. Поиск, вставка и удаление элементов. Анализ времени работы. | Практика и задачи по теме лекции. | - | 12 | Практика и задачи по теме лекции. | - | 13 | Практика и задачи по теме лекции. | - | 14 | Контрольная работа | Разбор сложных тем семестра. | }
Контрольные активностиВ течение семестра предусмотрены три контеста и итоговая контрольная работа. Точные недели публикации контестов и дедлайны будут объявлены отдельно в чате курса.
|
|---|