We use cookies in order to improve the quality and usability of the HSE website. More information about the use of cookies is available here, and the regulations on processing personal data can be found here. By continuing to use the site, you hereby confirm that you have been informed of the use of cookies by the HSE website and agree with our rules for processing personal data. You may disable cookies in your browser settings.

  • A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Algorithms and Data Structures

2024/2025
Academic Year
RUS
Instruction in Russian
6
ECTS credits
Course type:
Compulsory course
When:
1 year, 1-4 module

Instructor


Ovchinnikov, Andrei

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

Аннотация

Дисциплина является дисциплиной 1 курса и базируется на школьных знаниях математики и информатики. Основные положения дисциплины должны быть использованы в дальнейшем при изучении следующих дисциплин: «Объектно-ориентированное программирование», «Программирование на языке Python», «Программирование на языке Verilog», «Программирование микросервисных приложений», «Архитектура компьютера», «Базы данных».
Цель освоения дисциплины

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

  • Формирование у студентов теоретических знаний и практических навыков в области теории алгоритмов, современных структур данных для построения математических моделей дискретных структур и разработки программного обеспечения.
Планируемые результаты обучения

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

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

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

  • 1. Основные методы разработки алгоритмов
  • 2. Основные методы анализа алгоритмов
  • 3. Структуры данных
  • 4. Алгоритмы сортировки
  • 5. Алгоритмы поиска
  • 6. Базовые алгоритмы на графах
  • 7. Исчерпывающий поиск
  • 9. Быстрые алгоритмы умножения
Элементы контроля

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

  • неблокирующий Доклад 1
    Доклад является текущей формой контроля самостоятельной работы студентов. Студенты готовят и представляют краткий доклад и участвуют в дискуссии.
  • блокирующий Контрольный опрос 1
    Контрольный опрос проводится в виде теста в рамках текущего контроля. Каждый студент получает вариант с 10 вопросами
  • блокирующий Экзамен 1
    экзамен проводится в рамках промежуточного контроля в виде перечня вопросов. Каждый студент получает вариант с 10 вопросами
  • неблокирующий Доклад 2
    Доклад является текущей формой контроля самостоятельной работы студентов. Студенты готовят и представляют краткий доклад и участвуют в дискуссии.
  • блокирующий Контрольный опрос 2
    Контрольный опрос проводится в виде теста в рамках текущего контроля. Каждый студент получает вариант с 10 вопросами.
  • блокирующий Экзамен 2
    Экзамен проводится в рамках промежуточного контроля в виде перечня вопросов. Каждый студент получает вариант с 10 вопросами
Промежуточная аттестация

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

  • 2024/2025 2nd module
    0.2 * Доклад 1 + 0.2 * Контрольный опрос 1 + 0.6 * Экзамен 1
  • 2024/2025 4th module
    0.2 * Доклад 2 + 0.2 * Контрольный опрос 2 + 0.6 * Экзамен 2
Список литературы

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

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

  • Бабенко, М. А. Введение в теорию алгоритмов и структур данных / М. А. Бабенко, М. В. Левин. — Москва : МЦНМО, 2016. — 144 с. — ISBN 978-5-4439-2396-3. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/80136 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Белов, В. В. Алгоритмы и структуры данных : учебник / В.В. Белов, В.И. Чистякова. — Москва : КУРС : ИНФРА-М, 2023. — 240 с. — (Бакалавриат). - ISBN 978-5-906818-25-6. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2110058
  • Основы теории и алгоритмы на графах - Гданский Н.И. - НИЦ ИНФРА-М - 2022 - https://znanium.com/catalog/product/1817957 - 987335 - ZNANIUM

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

  • Структуры и алгоритмы обработки данных: обьектно ориентированный подход и реализация на С++ - 5-94157-506-8 - Кубенский А. - 2010 - Санкт-Петербург: БХВ-Петербург - https://ibooks.ru/bookshelf/18563 - 18563 - iBOOKS
  • Шень, А. Программирование: теоремы и задачи : учебное пособие / А. Шень. — Москва : МЦНМО, 2011. — 296 с. — ISBN 978-5-94057-696-9. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/9445 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.

Авторы

  • Марковская Наталья Владимировна
  • Овчинников Андрей Анатольевич
  • Любавина Светлана Вячеславовна