• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2022/2023

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

Статус: Курс обязательный (Программная инженерия)
Направление: 09.03.04. Программная инженерия
Когда читается: 2-й курс, 1-4 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для своего кампуса
Преподаватели: Волков Александр Сергеевич, Катичев Алексей Ростиславович
Язык: русский
Кредиты: 6
Контактные часы: 120

Программа дисциплины

Аннотация

Дисциплина "Алгоритмы и структуры данных» относится к блоку дисциплин специализации профессиональной подготовки бакалавра. В рамках дисциплины мы формируем умение мыслить и искать решения для абстрактных задач, способность ясно выражать свои мысли в коде, знание базовых алгоритмов и структур данных, умение оценивать сложность полученного решения.
Цель освоения дисциплины

Цель освоения дисциплины

  • • Формирование у студентов профессиональных компетенций, связанных с использованием теоретических знаний в области теории алгоритмов и теории сложности вычислений
  • • Получение практических навыков в области разработки ресурсно-эффективных алгоритмов на основе теоретического анализа
  • • Получение студентам навыков самостоятельной исследовательской работы, предполагающей изучение специфических методов анализа алгоритмов, инструментов и средств, необходимых для решения актуальной, в аспекте программной инженерии, задачи выбора рациональных алгоритмов, в зависимости от особенностей применения разрабатываемых программ
  • • Создание прочного программистско-алгоритмический базис, основываясь на котором, можно решать достаточно сложные алгоритмические задачи. При прохождении курса студенты должны решить несколько десятков задач, каждая из которых иллюстрирует либо отдельные алгоритмы, либо их композицию. Основной принцип, проводимый в курсе — необходимость применения принципа разделения задачи на более простые подзадачи — классическую триаду «анализ, декомпозиция, синтез» осведомиться о современных тенденциях в разработке структур данных
Планируемые результаты обучения

Планируемые результаты обучения

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

Содержание учебной дисциплины

  • Сложности. Поиск.
  • Сложности
  • Структуры данных на указателях
  • Структуры данных на массивах
  • Балансировка деревьев
  • Структуры данных hash
  • Структуры данных прочие
  • Разбор задач на структурах
  • Сортировки
  • Графы
  • Графы Графы – деревья Графы - поиск в ширину и связанности Графы - поиск в глубину Графы - ориентированные
  • Графы 2
  • Графы 3
  • Динамика база, Динамика и РиВ, Динамика
  • Строки
  • Геометрия
Элементы контроля

Элементы контроля

  • неблокирующий Контрольная работа 0,09
  • блокирует часть оценки/расчета Лабораторная работа 0,02 блокирующая
  • неблокирующий Контрольная работа 0,09
  • блокирует часть оценки/расчета Лабораторная работа 0,02 блокирующая
    Блокирует только накопительную часть оценки
  • неблокирующий Контрольная работа 0.09
    Контрольная работа
  • неблокирующий Экзамен 0,2 - зимняя сессия
    Экзамены принимаются только на зачетной неделе, расписание согласуется с учебным отделом. при форс-мажорных обстоятельствах изменение даты экзамена только при уведомлении учебного офиса.
  • неблокирующий Экзамен 0,4 летняя сессия
    О итог = х*ТК + y*Оэкзам. где 0,2<=х,y, х+у = 1
Промежуточная аттестация

Промежуточная аттестация

  • 2022/2023 учебный год 2 модуль
    Оитог = x * ТК + y * Оэкзам, Оэкзам= 0, 7 ТК = ОКр1 + Олаб, Стоимость текущего контроля: Окр1= 0,25 Олаб1=0,05
  • 2022/2023 учебный год 4 модуль
    Оитог = x * ТК + y * Оэкзам, Оэкзам= 0, 7 ТК = ОКр+ Олаб, Стоимость текущего контроля: Окр сумм= 0,25 Олаб сумм=0,05
Список литературы

Список литературы

Рекомендуемая основная литература

  • Головешкин, В. А. Теория рекурсии для программистов / В. А. Головешкин, М. В. Ульянов. — Москва : ФИЗМАТЛИТ, 2006. — 292 с. — ISBN 5-9221-0721-6. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/2165 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Петрушин, В. Н. Информационная чувствительность компьютерных алгоритмов : учебное пособие / В. Н. Петрушин, М. В. Ульянов. — Москва : ФИЗМАТЛИТ, 2010. — 224 с. — ISBN 978-5-9221-1264-2. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/2275 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Ульянов, М. В. Ресурсно-эффективные компьютерные алгоритмы. Разработка и анализ : учебное пособие / М. В. Ульянов. — Москва : ФИЗМАТЛИТ, 2008. — 304 с. — ISBN 978-5-9221-0950-5. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/2354 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.

Рекомендуемая дополнительная литература

  • Prabhu, C. S. R. (2019). Fog Computing, Deep Learning and Big Data Analytics-Research Directions. Singapore: Springer. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1994845

Авторы

  • Емельянова Мария Максимовна
  • Бычков Илья Сергеевич
  • Катичев Алексей Ростиславович