Форма занятий: лекция (L)
|
часы
|
|
Типы данных и алгоритмы. Абстрактные структуры данных. Разработка и анализ алгоритмов. Данные и этапы их представления. Классификация структур данных.
|
2
|
|
Обзор структур данных. Стандартные и структурированные типы данных: массивы, векторы, записи, объекты и указатели.
|
2
|
|
Рекурсия и ее использование в программировании. Рекурсивные алгоритмы, их анализ. Типы рекурсивных вычислений.
|
2
|
|
Алгоритмы поиска данных. Понятие поиска и его функции. Линейный поиск. Бинарный поиск. Эффективность и оптимизация методов.
|
2
|
|
Алгоритмы хешеривания данных. Хэш-таблица и хеш-функции. Поиск хешированием.
|
2
|
|
Алгоритмы сортировки данных. Понятие сортировки и ее функции. Строгие методы сортировки.
|
2
|
|
Алгоритмы сортировки данных. Улучшенные методы сортировки данных.
|
2
|
|
Линейные структуры данных. Статические и динамические массивы.
|
2
|
|
Линейные структуры данных. Линейные контейнеры. Итераторы.
|
2
|
|
Линейные связанные списки. Общие сведения о связанных списках. Односвязный список. Операции и их реализация
|
2
|
|
Линейные связанные списки. Двусвязные списки. Операции и их реализация
|
2
|
|
Стек, очередь и дек. Реализация стека, очереди и дека с помощью массива.
|
2
|
|
Стек, очередь и дек. Реализация стека, очереди и дека с помощью линейно-связного списка
|
2
|
|
Приоритетные очереди. Словари и реализация словарей.
|
2
|
|
Древовидные структуры данных. Определения и свойства древовидных структур данных. Классификация деревьев.
|
2
|
|
Бинарное дерево поиска. Алгоритмы добавления и удаления элементов, поиска и обхода дерева.
|
2
|
|
Сбалансированные бинарные деревья. Алгоритмы балансировки: общие и специальные алгоритмы балансировки. АВЛ-дерево.
|
2
|
|
Бинарные деревья в виде кучи (Heap tree). Описание древовидной структуры кучи. Алгоритмы выполнения операция над кучей
|
2
|
|
Алгоритмы на графах. Методы представления графов: матрица смежности и матрица инцидентности. Список смежности и список ребер.
|
2
|
|
Алгоритмы обхода графа. Алгоритм поиска в ширину (BFS). Алгоритм поиска в глубину (DFS).
|
2
|
|
Алгоритмы определения кратчайшего пути в графах. Задачи определения кратчайшего пути в графах. Алгоритм Дейкстры.
|
2
|
|
Алгоритмы определения кратчайшего пути в графах Алгоритмы Флойда-Уоршелла, Беллмана-Форда.
|
2
|
Всего
|
44
|
Форма занятий: Практическая (P)
|
часы
|
|
Составление программ для обработки различных типов данных. Разновидности алгоритмов
|
2
|
|
Разработка структур данных общего вида. Функции и классы. Файлы
|
2
|
|
Разбор примеров рекурсии. Разработка программ для рекурсивных алгоритмов
|
2
|
|
Разработка алгоритмов и программ поиска данных
|
2
|
|
Разработка структур данных с помощью алгоритма хешеривания
|
2
|
|
Разбор алгоритмов и методов сортировки данных
|
2
|
|
Составление алгоритмов и программ для обработки линейных структур данных
|
2
|
|
Работа с линейными связными списками
|
2
|
|
Составление алгоритмов и программ для работы со стеком, очередью и деком
|
2
|
|
Работа с древовидными структурами данных
|
2
|
|
Разбор бинарного дерева поиска в примерах
|
2
|
|
Работа с бинарными деревьями в виде кучи (Heap tree)
|
2
|
|
Разработка алгоритмов обхода графа
|
2
|
|
Методы логического представления графа
|
2
|
|
Разработка алгоритмов и программ определения кратчайшего пути в графах
|
2
|
|
|