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

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

Лекции

13 января: Сортировка вставкой и слиянием. Использование инварианта цикла при доказательстве корректности сортировки вставкой. Θ- и O-обозначения. Оценка сложности алгоритмов. Рекуррентные соотношения.

16 января: О-, o-, Ω-, ω-, Θ-обозначения. Быстрая сортировка, время работы в худшем, лучшем и среднем случаях. Оптимальность сортировки слиянием. Сортировка при помощи двоичного дерева поиска и ее связь с быстрой сортировкой.

20 января: Примеры решения рекуррентных соотношений: решение с использованием дерева рекурсии и методом подстановки. Формулировка и интуитивное объяснение основной теоремы. (Конспект.)

23 января: Выбор порядковой статистики за время O(n): рандомизированный и детерминированный алгоритмы.

27 января: Быстрое возведение в степень по модулю. Алгоритм Карацубы для умножения целых чисел. Алгоритм Штрассена для умножения матриц.

Домашние задания

Задание 1

Необходимо сдать все 6 задач в данном контесте. На выполнение задания дается 2 недели (см. точное время окончания в контесте). Условия ревью определяют семинаристы.

Семинары

Подгруппа 101-1.
Подгруппа 102-1.
Подгруппа 102-2.
Подгруппа 105-1.
Подгруппа 106-1.
Подгруппа 107-1.
Подгруппа 107-2.

Рекомендуемая литература

  1. Кормен, Лейзерсон, Ривест, Штайн. Алгоритмы: построение и анализ
  2. Дасгупта, Пападимитриу, Вазирани. Алгоритмы (оригинал | купить)

Полезные ссылки

  1. Инструкция по использованию Review Board.