EMBER_CLI_FASTBOOT_BODY

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

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

6-8 часов в неделю
Certificate Stepik

About this course

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

Who is this course for

Старшеклассники, студенты, программисты с небольшим опытом работы

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

Meet the Instructors

User picture
Степан Мацкевич
Образование: мехмат МГУ, кандидат физ.-мат. наук. Место работы: ABBYY, ФИВТ МФТИ, Технопарк Mail.ru в МГТУ им. Баумана.
Закончил механико-математический факультет МГУ им. М.В.Ломоносова в 2006 году, защитил кандидатскую диссертацию в 2010 году.
Работаю программистом с 2006 года в компании ABBYY. Сейчас являюсь руководителем небольшой группы разработки технологий извлечения онтологической информации из текстов на естественном языке.
Преподаю "Алгоритмы и структуры данных" и "Программирование под Windows" на факультете Инноваций и Высоких Технологий МФТИ с 2009 года. Читаю лекции и веду семинарские занятия. Преподавал также "Базы данных" на этом факультете.
В настоящее время параллельно веду курс "Алгоритмы" в Технопарке Mail.ru в МГТУ им. Н.Э.Баумана с 2013 года.

Course content

Базовые понятия и алгоритмы
  1.  
     
  2.  
     
  3.  
     
Базовые структуры данных. Двоичная куча
Сортировки 1
Сортировки 2. Порядковые статистики
Хеширование
Деревья

Certificate

Mail.Ru

Student reviews

Совершенно не понравился. Все объяснения сводятся к: "Вот алгоритм, а вот код".
Заброшенный курс.
Очень доступный курс, с примерами кода.

Share this course