Вопросы_СД
.doc-
Понятие о СД. Уровни представления СД. Классификация СД в программах пользователя.
-
СД типа «массив». Вычисление адреса для многомерного массива.
-
СД типа «запись». Прямое декартово произведение. Дескриптор записи.
-
СД типа «таблица». Классификация операций.
-
Временная сложность алгоритмов. Порядок функции временной сложности. Их определение в алгоритмах поиска.
-
Основные факторы выбора алгоритмов сортировки. Базовые сортировки. Анализ сложности.
-
Улучшенные сортировки. Сортировка Шелла. Анализ сложности.
-
Улучшенные сортировки. Быстрая сортировка выбором. Анализ сложности.
-
Улучшенные сортировки. Быстрая обменная сортировка (Хоара). Анализ сложности.
-
СД типа «стек». Базовые операции. Интерфейс СД типа стек.
-
СД типа «стек». Применение СД типа «стек» в в вычислительных системах и алгоритмах.
-
СД типа «очередь». Базовые операции. Интерфейс СД типа «очередь».
-
СД типа «очередь». Очереди с приоритетами.
-
СД типа «очередь». Применение очередей в вычислительных системах.
-
Связное представление данных в памяти компьютера.
-
Односвязный линейный список. Базовые операции. Функциональный и свободный списки.
-
Односвязный линейный список. Реализация ОЛС, как отображение на массив.
-
Односвязный линейный список. Реализация ОЛС с использованием указательного типа. Интерфейс ОЛС.
-
Односвязный линейный список. Применение односвязного линейного списка. Стек, как отображение на список. Очередь, как отображение на список.
-
СД типа циклический односвязный линейный список. Интерфейс циклического ОЛС.
-
Двусвязный линейный список. Базовые операции. Интерфейс ДЛС.
-
СД типа «дек». Базовые операции. Интерфейс СД типа «дек».
-
Многосвязные списки (мультисписки).
-
Классификация алгоритмов по временной сложности.
-
СД типа «таблица прямого доступа».
-
СД типа «хеш-таблица». Требования к хеш-функции. Разрешение коллизий с помощью цепочек.
-
СД типа «хеш-таблица». Метод открытой адресации.
-
Нелинейные СД. Деревья. Основные определения. Представление деревьев в связной памяти.
-
Алгоритм прохождения n-арных деревьев «в ширину» и «в глубину».
-
Алгоритм представления n-арных деревьев в виде бинарных. Представление бинарных деревьев в памяти. Прошитые бинарные деревья.
-
Формирование идеально сбалансированного дерева.
-
Применение бинарных деревьев в алгоритмах поиска. Таблица, как отображение на бинарное дерево.
-
Операция включения в бинарное дерево. Анализ сложности.
-
Операция исключения из бинарного дерева. Анализ сложности.
-
Применение бинарных деревьев. Алгоритмы прохождения бинарных деревьев.
-
Коды Хаффмена. Общие сведения. Префиксные коды.
-
Коды Хаффмена. Алгоритмы построения кода Хаффмена.
-
Сбалансированные деревья. АВЛ-деревья. Определение АВЛ-дерева.
-
АВЛ-деревья. Операция включения/исключения в/из АВЛ-дерева.
-
Оптимальные деревья поиска. Постановка задачи.
-
Алгоритм Гильберта — Мура оптимального дерева поиска.
-
Графы. Основные определения.
-
Графы. Представление графа в памяти компьютера. Матрица смежности. Алгоритм Уоршелла.
-
Графы. Алгоритм Флойда.
-
Графы. Алгоритм прохождения графа «в ширину» и «в глубину».
-
Топологическая сортировка. Алгоритм. Примеры применения.
-
Внешняя сортировка. Особенности внешней сортировки. Алгоритм слияния.
-
Внешняя сортировка. Алгоритм прямого слияния. Анализ.
-
B-деревья. Основные определения. Алгоритм поиска.
-
B-деревья. Алгоритм включения в B-дерево. Пример.
-
B-деревья. Алгоритм исключения из B-дерева. Пример.