Бакалавриат
2022/2023
Алгоритмы и структуры данных
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс обязательный (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Кто читает:
Департамент информатики
Когда читается:
1-й курс, 1-4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Буков Антон Алексеевич,
Козлова Дарья Дмитриевна,
Копелиович Сергей Владимирович,
Кузнецов Антон Михайлович,
Надточий Алексей Михайлович,
Орешников Даниил Михайлович,
Сафроненко Евгений Владимирович,
Ходунов Павел Андреевич,
Яковлев Дмитрий
Язык:
русский
Кредиты:
8
Контактные часы:
124
Программа дисциплины
Аннотация
Дисциплина базовой части профессионального цикла. Данная дисциплина служит основой для профессиональной ориентации студентов при выборе дисциплин из вариативной части Программы. Дисциплина направлена на овладение навыками использования основных применяемых в программировании структур данных, алгоритмов обработки данных и анализа этих алгоритмов, взаимосвязи алгоритмов и структур данных.
Цель освоения дисциплины
- Формирование у студентов теоретических знаний и практических навыков в области теории алгоритмов, современных структур данных и их реализации на языке программирования C++ для построения математических моделей дискретных структур и разработки программного обеспечения.
Планируемые результаты обучения
- Знает методы оценки сложности алгоритмов в среднем и в худшем случаях, базовые и продвинутые абстрактные структуры данных, постановки основных задач, основные классы алгоритмов.
- Умеет оценивать сложность алгоритмов в среднем и в худшем случаях, выделять из практических задач их алгоритмическую составляющую, реализовывать изученные алгоритмы и структуры данных на процедурных языках программирования, выбирать оптимальные алгоритмы и структуры данных, в зависимости от конкретных ограничений на решение задачи, применять приближённые алгоритмы в тех случаях, когда эффективное точное решение невозможно.
- Имеет навыки оценки сложности алгоритмов в среднем и в худшем случаях, реализации алгоритмов и структур данных на процедурных языках программирования.
Содержание учебной дисциплины
- Раздел 1. Основные понятия теории алгоритмов и структур данных
- Раздел 2. Динамическое программирование. Комбинаторные и графовые алгоритмы
- Раздел 3. Элементы теории сложности алгоритмов. Кратчайшие пути. Жадные алгоритмы
- Раздел 4. Деревья поиска, деревья отрезков и другие аналогичные структуры
- Раздел 5. Алгоритмы на графах. Потоки в орграфах. Строки
- Раздел 6. Игры на графах. Быстрое преобразование Фурье. Линейная алгебра
Элементы контроля
- Домашнее задание №1Домашнее задание N№1 выдается студентам в одном варианте и состоит из 6 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Домашнее задание №2Домашнее задание №2 выдается студентам в одном варианте и состоит из 6 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Домашнее задание №3Домашнее задание №3 выдается студентам в одном варианте и состоит из 6 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Домашнее задание №4Домашнее задание №4 выдается студентам в одном варианте и состоит из 5 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Домашнее задание №5Домашнее задание №5 выдается студентам в одном варианте и состоит из 6 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Домашнее задание №6Домашнее задание №6 выдается студентам в одном варианте и состоит из 5 задач. Каждой задаче присвоен свой балл. Срок выполнения домашнего задания - 2 недели. Форма предоставления обучающимися домашнего задания - представленные в письменном виде решения задач.
- Коллоквиум №1Коллоквиум №1 проводится в форме ответов на вопросы билета. Билет содержит два вопроса. На подготовку ответа выделяется 2,5 часа.
- Экзамен №1Письменный экзамен №1 проводится в форме ответов на вопросы экзаменационного билета. Экзаменационный билет содержит два вопроса из перечня вопросов к экзамену. На подготовку ответа выделяется 2,5 часа.
- Коллоквиум №2Коллоквиум №2 проводится в форме ответов на вопросы билета. Билет содержит два вопроса. На подготовку ответа выделяется 2,5 часа.
- Экзамен №2Письменный экзамен №2 проводится в форме ответов на вопросы экзаменационного билета. Экзаменационный билет содержит два вопроса из перечня вопросов к экзамену. На подготовку ответа выделяется 2,5 часа.
- Коллоквиум №3Коллоквиум №3 проводится в форме ответов на вопросы билета. Билет содержит два вопроса. На подготовку ответа выделяется 2,5 часа.
- Экзамен №3Письменный экзамен №3 проводится в форме ответов на вопросы экзаменационного билета. Экзаменационный билет содержит два вопроса из перечня вопросов к экзамену. На подготовку ответа выделяется 2,5 часа.
Промежуточная аттестация
- 2022/2023 учебный год 2 модуль0.2 * Домашнее задание №2 + 0.3 * Экзамен №1 + 0.3 * Коллоквиум №1 + 0.2 * Домашнее задание №1
- 2022/2023 учебный год 4 модуль0.3 * Экзамен №2 + 0.3 * Коллоквиум №2 + 0.2 * Домашнее задание №4 + 0.2 * Домашнее задание №3
- 2023/2024 учебный год 2 модуль0.2 * Домашнее задание №5 + 0.3 * Экзамен №3 + 0.3 * Коллоквиум №3 + 0.2 * Домашнее задание №6
Список литературы
Рекомендуемая основная литература
- 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