Алгоритмы и структуры данных, часть 1
Санкт-Петербург / осень 2017, посмотреть все семестры

Курс знакомит слушателей с базовыми алгоритмическими приёмами и структурами данных. Цели курса: изучить базовые алгоритмы и структуры данных; попрактиковаться использовать стандартные алгоритмические методы для решения вычислительных задач; попрактиковаться доказывать корректность и оценки на время работы алгоритмов; попрактиковаться писать надёжный, читаемый и поддерживаемый код; попрактиковаться тестировать и отлаживать код.

Содержание

Методы

Скорость роста функций, время работы алгоритмов; жадные алгоритмы; разделяй и властвуй; динамическое программирование

Структуры данных

Базовые структуры (массивы, списки, стеки, очереди); очереди с приоритетами; системы непересекающихся множеств; хеш-таблицы; сбалансированные деревья

Алгоритмы на графах

Декомпозиция графов, пути в графах, минимальные остовные деревья

Алгоритмы на строках

Поиск образца в строке, суффиксное дерево, суффиксный массив, преобразование Барроуза–Уиллера

Алгоритмы и теория сложности

Потоки в сетях, линейное программирование, NP-полные задачи, алгоритмы для NP-полных задач

Оценка за курс

Оценка будет складываться из:

  • Обратная связь по онлайн-курсу (10%)
  • Теоретические задачи (45%)
  • Задачи на программирование (45%)

Для получения оценки отлично необходимо будет набрать хотя бы 80%, хорошо — хотя бы 70%, удовлетворительно — хотя бы 60% (данные проходные баллы могут слегка поменяться).

Дата и время Название Место Материалы
07 сентября
18:30–19:50
Организационное собрание, лекция Таймс, ауд. с белыми досками Нет
14 сентября
18:30–19:50
Введение, O-символика, лекция Таймс, ауд. с белыми досками Нет
14 сентября
20:00–21:20
Семинар, семинар Таймс, 2 этаж, ауд.204 Нет
21 сентября
18:30–19:50
Жадные алгоритмы, лекция Таймс, ауд. с белыми досками Нет
21 сентября
20:00–21:20
Семинар, семинар Таймс, ауд. с белыми досками Нет
28 сентября
18:30–19:50
Разделяй и властвуй, лекция Таймс, ауд. с белыми досками Нет
28 сентября
20:00–21:20
Семинар, семинар Таймс, ауд. с белыми досками Нет
05 октября
18:30–19:50
Динамическое программирование, лекция Таймс, ауд. с белыми досками Нет
05 октября
20:00–21:20
Семинар, семинар Таймс, ауд. с белыми досками Нет
12 октября
18:30–19:50
Базовые структуры данных, лекция Таймс, ауд. с белыми досками Нет
12 октября
20:00–21:20
Семинар, лекция Таймс, ауд. с белыми досками Нет
19 октября
18:30–19:50
Очереди с приоритетами и непересекающиеся множества, лекция Таймс, ауд. с белыми досками Нет
19 октября
20:00–21:20
Семинар, лекция Таймс, ауд. с белыми досками Нет
26 октября
18:30–19:50
Хеш-таблицы, лекция Таймс, ауд. с белыми досками Нет
26 октября
20:00–21:20
Семинар, лекция Таймс, ауд. с белыми досками Нет
02 ноября
18:30–19:50
Деревья поиска, лекция Таймс, ауд. с белыми досками Нет
02 ноября
20:00–21:20
Семинар, семинар Таймс, ауд. с белыми досками Нет
09 ноября
18:30–19:50
Декомпозиция графов, лекция Таймс, ауд. с белыми досками Нет
09 ноября
20:00–21:20
Семинар, лекция Таймс, ауд. с белыми досками Нет
23 ноября
18:30–19:50
Пути в графах, лекция Таймс, ауд. с белыми досками Нет
23 ноября
20:00–21:20
Семинар, семинар Таймс, ауд. с белыми досками Нет
30 ноября
18:30–19:50
Минимальные покрывающие деревья, лекция Таймс, ауд. с белыми досками Нет
30 ноября
20:00–21:20
Практика, семинар Таймс, ауд. с белыми досками Нет