
- •Нелинейные структуры данных: классификация.
- •Деревья: ориентированные, упорядоченные и бинарные.
- •Представление деревьев в памяти компьютера: последовательное и связанное размещение элементов.
- •Операции над деревьями.
- •Графы и их представление в компьютере.
- •Матричное представление орграфов.
- •Связное представление орграфов.
- •Алгоритмы, оперирующие со структурами типа графа.
- •Поиск в глубину
- •Построение остова минимального веса
- •Построение эйлерова цикла
- •Поиск кратчайшего пути
- •Алгоритм поиска в ширину
- •Построение наибольшего паросочетания в двудольном графе
- •Алгоритм укладки графа на плоскости
- •Задачи поиска.
- •Исчерпывающий поиск: перебор с возвратом, метод ветвей и границ, динамическое программирование. Поиск с возвращением
- •Алгоритм поиска с возвращением
- •Метод ветвей и границ
- •Динамическое программирование
- •Быстрый поиск: бинарный и последовательный поиски в массивах, хеширование Бинарный поиск
- •Хеширование
- •Использование деревьев в задачах поиска: бинарные, случайные бинарные, оптимальные и сбалансированные деревья поиска.
- •Двоичные деревья
- •Сбалансированные двоичные деревья
- •Деревья оптимального поиска
- •Деревья цифрового поиска
- •Алгоритмы поиска на графах.
- •Внутренняя сортировка.
- •Сортировка включением
- •Обменная сортировка
- •Сортировка выбором
- •Сортировка разделением (Quicksort)
- •Сортировка с помощью дерева (Heapsort)
- •Сортировка со слиянием
- •Сравнение методов внутренней сортировки
- •Внешняя сортировка.
- •Прямое слияние
- •Естественное слияние
- •Сбалансированное многопутевое слияние
- •Многофазная сортировка
- •Улучшение эффективности внешней сортировки за счет использования основной памяти
- •Файлы: организация и обработка, представление деревьями: b-деревья. Классические b-деревья
- •Контрольные вопросы:
Контрольные вопросы:
Определение древовидной структуры данных. Изображение и основные характеристики деревьев.
Представление деревьев в памяти компьютера
Идеально сбалансированное дерево. Представление ИСД из N узлов в памяти ЭВМ.
Прохождение бинарных деревьев. Использование рекурсии для реализации способов обхода деревьев.
Бинарное дерево поиска. Формирование дерева поиска в памяти ЭВМ.
Удаление из дерева поиска. Процедура, реализующая удаление.
Сбалансированное AVL-дерево. Описание узлов и применение AVL-деревьев.
Включение в AVL-дерево.
Общие схемы балансировки AVL-деревьев.
Алгоритм включения и балансировки AVL-дерева. LL- и LR-повороты.
Алгоритм включения и балансировки AVL-дерева. RR- и RL-повороты.
Удаление из сбалансированного AVL-дерева.
Алгоритм удаления из AVL-дерева. Случай, когда удаляемый элемент имеет не более одного потомка.
Алгоритм удаления из AVL-дерева. Случай, когда удаляемый элемент имеет двух потомков.
Определение, преимущества и использование сильно ветвящихся деревьев.
Определение и характеристики В-деревьев.
Поиск в В-дереве.
Включение в В-дерево.
Представление В-дерева в памяти ЭВМ и процедура поиска с включением.
Алгоритм обработки В-дерева. Процедура поиска.
Алгоритм обработки В-дерева. Процедура вставки нового элемента.
Удаление элементов из В-дерева. Случай, когда удаляемый элемент находится в листе.
Удаление элементов из В-дерева. Случай, когда удаляемый элемент находится в нелистовом узле.
Перемещение и заимствование элементов при удалении из В-дерева. Распад В-дерева.
Достоинства и недостатки В-дерева. Разновидности В-деревьев.
Графы.
Представление графов в компьютере.
Поиск в глубину в графе.
Построение остова минимального веса.
Построение эйлерова цикла.
Поиск кратчайшего пути.
Поиск в ширину.
Построение наибольшего паросочетания в двудольном графе.
Укладка графа на плоскости.
Поиск с возвращением.
Метод ветвей и границ.
Динамическое программирование.
Бинарный поиск.
Хеширование.
Сортировка включением.
Обменная сортировка.
Сортировка выбором.
Сортировка разделением.
Сортировка с помощью дерева.
Метод построения пирамиды.
Сортировка со слиянием.
Прямое слияние.
Естественное слияние.
Сбалансированное многопутевое слияние.
Многофазная сортировка.