Бакалавриат
2023/2024![Цель освоения дисциплины](/f/src/global/i/edu/objectives.svg)
![Планируемые результаты обучения](/f/src/global/i/edu/results.svg)
![Содержание учебной дисциплины](/f/src/global/i/edu/sections.svg)
![Элементы контроля](/f/src/global/i/edu/controls.svg)
![Промежуточная аттестация](/f/src/global/i/edu/intermediate_certification.svg)
![Список литературы](/f/src/global/i/edu/library.svg)
Алгоритмы и структуры данных
Статус:
Курс обязательный (Прикладной анализ данных и искусственный интеллект)
Направление:
01.03.02. Прикладная математика и информатика
Кто читает:
Департамент информатики
Когда читается:
1-й курс, 1-4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Копелиович Сергей Владимирович,
Овчинников Андрей Анатольевич,
Ткаченко Данил Михайлович
Язык:
русский
Кредиты:
8
Контактные часы:
124
Программа дисциплины
Аннотация
Дисциплина базовой части профессионального цикла. Данная дисциплина служит основой для профессиональной ориентации студентов при выборе дисциплин из вариативной части Программы. Дисциплина направлена на овладение навыками использования основных применяемых в программировании структур данных, алгоритмов обработки данных и анализа этих алгоритмов, взаимосвязи алгоритмов и структур данных.
Цель освоения дисциплины
- Формирование у студентов теоретических знаний и практических навыков в области теории алгоритмов, современных структур данных и их реализации на языке программирования C++ для построения математических моделей дискретных структур и разработки программного обеспечения.
Планируемые результаты обучения
- Знает методы оценки сложности алгоритмов в среднем и в худшем случаях, базовые и продвинутые абстрактные структуры данных, постановки основных задач, основные классы алгоритмов.
- Умеет оценивать сложность алгоритмов в среднем и в худшем случаях, выделять из практических задач их алгоритмическую составляющую, реализовывать изученные алгоритмы и структуры данных на процедурных языках программирования, выбирать оптимальные алгоритмы и структуры данных, в зависимости от конкретных ограничений на решение задачи, применять приближённые алгоритмы в тех случаях, когда эффективное точное решение невозможно.
- Имеет навыки оценки сложности алгоритмов в среднем и в худшем случаях, реализации алгоритмов и структур данных на процедурных языках программирования.
Содержание учебной дисциплины
- Раздел 1. Основные понятия теории алгоритмов и структур данных
- Раздел 2. Динамическое программирование. Комбинаторные и графовые алгоритмы
- Раздел 3. Элементы теории сложности алгоритмов. Кратчайшие пути. Жадные алгоритмы
- Раздел 4. Деревья поиска, деревья отрезков и другие аналогичные структуры
- Раздел 5. Алгоритмы на графах. Потоки в орграфах. Строки
- Раздел 6. Игры на графах. Быстрое преобразование Фурье. Линейная алгебра
Элементы контроля
- Коллоквиум №2Коллоквиум №2 проводится в форме ответов на вопросы билета. Билет содержит два вопроса. На подготовку ответа выделяется 2,5 часа.
- Домашнее задание №2Домашнее задание №2 выдается студентам в одном варианте и состоит из 6 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Домашнее задание №1Домашнее задание N№1 выдается студентам в одном варианте и состоит из 6 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Домашнее задание №3Домашнее задание №3 выдается студентам в одном варианте и состоит из 6 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Домашнее задание №4Домашнее задание №4 выдается студентам в одном варианте и состоит из 5 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Экзамен №2Письменный экзамен №2 проводится в форме ответов на вопросы экзаменационного билета. Экзаменационный билет содержит два вопроса из перечня вопросов к экзамену. На подготовку ответа выделяется 2,5 часа.
- Коллоквиум №1Коллоквиум №1 проводится в форме ответов на вопросы билета. Билет содержит два вопроса. На подготовку ответа выделяется 2,5 часа.
- Экзамен №1Письменный экзамен №1 проводится в форме ответов на вопросы экзаменационного билета. Экзаменационный билет содержит два вопроса из перечня вопросов к экзамену. На подготовку ответа выделяется 2,5 часа.
Промежуточная аттестация
- 2023/2024 учебный год 2 модуль0.2 * Домашнее задание №1 + 0.2 * Домашнее задание №2 + 0.3 * Коллоквиум №1 + 0.3 * Экзамен №1
- 2023/2024 учебный год 4 модуль0.2 * Домашнее задание №3 + 0.2 * Домашнее задание №4 + 0.3 * Коллоквиум №2 + 0.3 * Экзамен №2
Список литературы
Рекомендуемая основная литература
- Cormen, T. H., Leiserson, C. E., Rivest, R. L., Stein, C. Introduction to Algorithms (3rd edition). – MIT Press, 2009. – 1292 pp.
- Алгоритмы и структуры данных: Учебник / Белов В.В., Чистякова В.И. - М.:КУРС, НИЦ ИНФРА-М, 2019. - 240 с.: - (Бакалавриат) - Режим доступа: http://znanium.com/catalog/product/978314
Рекомендуемая дополнительная литература
- Skiena, S. S. (2008). The Algorithm Design Manual (Vol. 2nd ed). London: Springer. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=277139
- Кубенский А. - Структуры и алгоритмы обработки данных: обьектно ориентированный подход и реализация на С++ - 5-94157-506-8 - Санкт-Петербург: БХВ-Петербург - 2010 - 18563 - https://ibooks.ru/bookshelf/18563/reading - iBOOKS