Бакалавриат
2024/2025
Алгоритмы и структуры данных в прикладных задачах
Статус:
Курс обязательный (Разработка информационных систем для бизнеса)
Направление:
09.03.04. Программная инженерия
Где читается:
Факультет менеджмента (Пермь)
Когда читается:
2-й курс, 1, 2 модуль
Формат изучения:
с онлайн-курсом
Онлайн-часы:
50
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Горденко Мария Константиновна
Язык:
русский
Кредиты:
4
Программа дисциплины
Аннотация
Курс дает базовые знания в области алгоритмов и структур данных, которые важны для понимания работы библиотечных функций, алгоритмов и языков программирования. Домашние задания по курсу закрепляют полученные знания основных алгоритмов и структур данных.
Цель освоения дисциплины
- Получение студентами навыков самостоятельной работы, предполагающей изучение специфических методов анализа алгоритмов, инструментов и средств, необходимых для решения актуальной, в аспекте программной инженерии, задачи выбора рациональных алгоритмов, в зависимости от особенностей применения разрабатываемых программ.
Планируемые результаты обучения
- Уметь выполнять асимптотический анализ сложности алгоритмов.
- Улучшить навыки программирования.
- Развить у студентов умение оценивать сложность готовых алгоритмов и задач и конструировать собственные эффективные алгоритмы.
- Ознакомить студентов с типичными методами разработки эффективных алгоритмов и с эффективными алгоритмами решения задач из важнейших разделов дискретной математики и программирования.
Содержание учебной дисциплины
- Оценка сложности алгоритма.
- Линейные структуры данных.
- Линейные алгоритмы.
- Понятие рекурсии. Основные задачи рекурсии. Задача о ханойских башнях.
- Задача сортировки.
- Итеративные сортировки.
- Задача поиска.
- Двоичная куча. Пирамидальная сортировка.
- Динамическое программирование. Основные задачи, решаемые с помощью динамического программирования.
- Алгоритмы обработки строк.
- Жадные алгоритмы.
- Основные понятия теории графов. Представление графов в памяти компьютера. Алгоритмы обхода графов.
- Алгоритмы, основанные на обходах графов.
Элементы контроля
- Домашнее задание 1-nВыдается после лекции и содержит автоматически тестируемые задачи в системе Яндекс.Контест. Пересдача домашних заданий не предусмотрена, вес каждого отдельного домашнего задания не превышает 30% от итоговой оценки. В случае обнаружения плагиата в хотя бы одной задаче - работа аннулируется с составлением докладной записки.
- ЭкзаменЭкзамен проходит аналогично домашним заданиям, может содержать задания разной тематики. Проводится в системе Яндекс.Контест.
Промежуточная аттестация
- 2024/2025 2nd moduleИтог = Округление(0.7 * ДЗ + 0.3 * Э), где ДЗ — средняя оценка за все домашние задания, Э — оценка за экзамен.