Бакалавриат
2025/2026



Алгоритмы и структуры данных в прикладных задачах
Статус:
Курс обязательный (Разработка информационных систем для бизнеса)
Где читается:
Факультет компьютерных наук
Когда читается:
2-й курс, 1, 2 модуль
Онлайн-часы:
50
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Горденко Мария Константиновна
Язык:
русский
Контактные часы:
28
Программа дисциплины
Аннотация
Курс дает базовые знания в области алгоритмов и структур данных, которые важны для понимания работы библиотечных функций, алгоритмов и языков программирования. Домашние задания по курсу закрепляют полученные знания основных алгоритмов и структур данных.
Цель освоения дисциплины
- Получение студентами навыков самостоятельной работы, предполагающей изучение специфических методов анализа алгоритмов, инструментов и средств, необходимых для решения актуальной, в аспекте программной инженерии, задачи выбора рациональных алгоритмов, в зависимости от особенностей применения разрабатываемых программ.
Планируемые результаты обучения
- Уметь выполнять асимптотический анализ сложности алгоритмов.
- Улучшить навыки программирования.
- Развить у студентов умение оценивать сложность готовых алгоритмов и задач и конструировать собственные эффективные алгоритмы.
- Ознакомить студентов с типичными методами разработки эффективных алгоритмов и с эффективными алгоритмами решения задач из важнейших разделов дискретной математики и программирования.
Содержание учебной дисциплины
- Оценка сложности алгоритма.
- Линейные структуры данных.
- Линейные алгоритмы.
- Понятие рекурсии. Основные задачи рекурсии. Задача о ханойских башнях.
- Задача сортировки.
- Итеративные сортировки.
- Задача поиска.
- Двоичная куча. Пирамидальная сортировка.
- Динамическое программирование. Основные задачи, решаемые с помощью динамического программирования.
- Алгоритмы обработки строк.
- Жадные алгоритмы.
- Основные понятия теории графов. Представление графов в памяти компьютера. Алгоритмы обхода графов.
- Алгоритмы, основанные на обходах графов.
Промежуточная аттестация
- 2025/2026 2nd moduleИтог = Округление(0.25 * min(О_дз1-6; О_КР1) + 0.25 * min(О_дз7-12; О_КР2) + 0.3 * Э + 0.2 * Проект), где ДЗ — средняя оценка за домашние задания, Э — оценка за экзамен, КР — оценка за контрольную работу, Проект — выполненный сложный проект на 10 баллов.