Рейтинг@Mail.ru
Авторские онлайн-курсы от ведущих IT-разработчиков

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

6 модулей 6-8 часов в неделю 8 декабря 2015 - 16 февраля 2016
Степан Мацкевич, Образование: мехмат МГУ, кандидат физ.-мат. наук. Место работы: ABBYY, ФИВТ МФТИ, Технопарк Mail.ru в МГТУ им. Баумана.

Курс представляет собой изучение основных алгоритмов и структур данных, необходимых программистам для качественного решения ежедневных задач. По окончанию курса у вас появится личный опыт реализации основных алгоритмов и представление о том, как оценивать эффективность по времени работы и по количеству используемой дополнительной памяти.

  • Базовые понятия и алгоритмы
    • Вводный урок курса
    • Обзор алгоритмов. Первые шаги. Сложность алгоритмов
    • Массивы. Линейный и бинарный поиск. Амортизационный анализ
  • Базовые структуры данных. Двоичная куча
    • Списки. Очередь, стек, дек
    • Двоичная куча. Очередь с приоритетом
  • Сортировки 1
    • Квадратичные сортировки
    • Сортировка кучей и сортировка слиянием
  • Сортировки 2. Порядковые статистики
    • Быстрая сортировка и порядковые статистики
    • Поразрядные сортировки
  • Хеширование
    • Хеш-функции
    • Хеш-таблицы
  • Деревья
    • Деревья. Реализации. Обходы деревьев
    • Двоичные деревья поиска и Декартовы деревья
    • АВЛ-деревья
    • Заключительный урок
Сертификат
Mail.Ru
Формат курса
Видео-уроки, задачи
Язык
Русский
Целевая аудитория
Старшеклассники, студенты, программисты с небольшим опытом работы
Создано
Mail.Ru Group
SHARE
Требования

Требуются базовые умения программировать. Знать какой-нибудь из популярных языков программирования, например, C или C++.

Описание

Курс содержит описание основных алгоритмов и структур данных. Вначале даются базовые понятия и оценка сложности, которые разбираются на примере следующих алгоритмов: "Вычисление чисел Фибоначчи", "Проверка числа на простоту", "Быстрое возведение в степень". Затем обсуждаются основные алгоритмы на массиве, линейный и бинарный поиск в массиве, структура данных "Динамический массив".
В следующем модуле разбираются структуры данных "Однонаправленные и двунаправленные списки", "Очередь", "Стек", "Дек", "Двоичная куча", "Очередь с приоритетом", операции с ними, способы реализации.
Много внимания уделяется сортировкам, им посвящено два модуля. Рассматриваются основные типы сортировок, их реализации, обсуждается, в каких случаях рекомендуется применять те или иные сортировки. Тема порядковых статистик также обсуждается в этом модуле, как идеологически близкая.
После сортировок ставится задача построения эффективного контейнера. В качестве решения разбираются различные виды хеш-таблиц и двоичных деревьев поиска. Всего за курс можно набрать 100 баллов. Сертификат выдается за 85 баллов. Сертификат с отличием за 95 баллов.

Раздел в стадии разработки, следите за нашими обновлениями!