
сиаод / SiAODvEVM_vopros
.pdfСтруктуры и алгоритмы обработки данных.
Введение в предмет.
1.Алгоритмы.
2.Вычислительная сложность алгоритмов и ее оценка.
3.Классификация структур
Линейные динамические структуры данных.
4.Стек. Абстрактный тип данных стек. Реализация с помощью массива.
5.Стек. Абстрактный тип данных стек. Реализация с помощью указателей.
6.Очередь. Абстрактный тип данных очередь. Реализация очереди с помощью массива.
7.Очередь. Абстрактный тип данных очередь. Реализация очереди с помощью указателей. Очередь с фиктивным элементом.
8.Дек как структура данных.
9.Односвязный список. Основные операции. Реализация списка с помощью массива. (Включение и исключение элементов, просмотр списка и поиск нужного элемента).
10.Односвязный список. Основные операции. Реализация списка с помощью указателей.
11.Линейный двусвязный список. Реализация списка с помощью массива.
12.Линейный двусвязный список. Представление двусвязного списка с помощью указателей.
13.Кольцевой двусвязный список. Алгоритмы работы при использовании фиктивного элемента и без него.
Деревья.
14.Древовидные структуры данных. Основные понятия.
15.Представление деревьев в ЭВМ (последовательное и связное).
16.Обход n – арного дерева. Алгоритмы обхода n – арного дерева.
17.Бинарные деревья(основные определения). Основные операции над «АТД» бинарное дерево. Представление двоичного дерева в памяти ЭВМ.
18.Рекурсивные алгоритмы обхода бинарного дерева.
19.Не рекурсивные алгоритмы обхода бинарного дерева.
Задача поиска.
20.Поиск в упорядоченных таблицах. Последовательный поиск в массиве.
21.Поиск в упорядоченных таблицах. Двоичный поиск в массиве. Фибоначиевый поиск. Интерполяционный поиск.
22.Поиск в линейном списке.
Двоичное дерево поиска.
23.Бинарное дерево поиска. Свойства. Основные операции.
24.Добавление элемента в двоичном дереве поиска.
25.Удаление элемента в двоичном дереве поиска.
26.Абстрактная таблица. Основные операции. Способ реализации.
27.АВЛ – деревья. Свойства. Вращение. Высота АВЛ-дерева (теорема).
28.Добавление вершины в АВЛ – дерево.
29.Удаление вершины в АВЛ – дереве.
30.Красно – черные деревья. Свойства. Вращение. Высота красно – черного дерева.
31.Добавление вершины в красно – черном дереве.
32.Удаление вершины в красно – черном дереве.
33.2-3 деревья. Основные свойства. Высота 2 – 3 дерева.
34.Обход 2- 3 дерева.
35.Добавление элемента в 2 – 3 дерево.
36.Удаление элемента в 2 – 3 дереве.
37.2 – 3 – 4 деревья. Основные свойства. Высота 2 – 3 – 4 дерева.
38.Добавление элемента в 2 – 3 – 4 дерево.
Сортировка.
39.Стратегии внутренней сортировки.
40.Турнирная сортировка.
41.Пирамидальная сортировка.
42.Вставка с убывающим шагом.
43.Быстрая сортировка.
44.Быстрая двоичная сортировка.
45.Цифровая распределяющая сортировка.
46.Карманная (блочная) сортировка.
47.Сортировка подсчетом. ?????
48.Сортировка слиянием. Рекурсивный алгоритм.
49.Нижняя граница вычислительной сложности алгоритмов сортировки.
Графы.
50.Поиск в глубину в графе. Рекурсивные алгоритм.
51.Поиск в ширину в графе. Не рекурсивный алгоритм.
52.Топологическая сортировка. Алгоритм топологической сортировки.
53.Двусвязность. Алгоритм определения двусвязности графа.
54.Сильно связные компоненты. Алгоритм.
55.Эйлеровы пути и циклы. Алгоритм нахождения эйлерова цикла.
56.Нахождение множества фундаментальных циклов графа. Рекурсивный алгоритм нахождения множества фундаментальных циклов.
57.Алгоритм Воршалла.
58.Стягивающие деревья. Нахождение стягивающего дерева методом поиска в ширину.
59.Стягивающие деревья. Нахождение стягивающего дерева методом поиска в глубину.
60.Минимальные покрывающие деревья. Алгоритм Прима.
61.Минимальные покрывающие деревья. Алгоритм Крускала.
62.Нахождение кратчайших путей в графе. Алгоритм Форда – Беллмана.
63.Нахождение кратчайших путей в графе. Алгоритм Дэйкстры.
64.Пути в бесконтурном графе.
65.Алгоритм Флойда поиска кратчайших путей между всеми парами вершин.
Хеш – таблица.
66.Открытое хеширование.
67.Хеш – функции (ключи как натуральные числа, деление с остатком, умножение).
68.Закрытое хеширование. (линейная последовательность проб. Квадратичная последовательность проб. Двойное хеширование).
Поиск подстрок.
69.Алгоритм Кнута – Морриса – Пратта.
70.Поиск подстрок. Алгоритм Бойера – Мура.
71.Поиск подстрок. Алгоритм Рабина – Карпа.
Сжатие информации.
72.Равномерный и неравномерный код. Префиксное кодирование.
73.Алгоритм Шеннона – Фано.
74.Сжатие информации. Метод Хаффмана.
75.Исчерпывающий перебор. Задачи коммивояжера. Задача о назначениях.
76.Поиск с возвратом: алгоритм, применение метода к задаче нахождения гамильтонова цикла в графе.
77.Метод ветвей и границ. Задача о назначениях. Задача о рюкзаке. Задача коммивояжера.
78.Метод декомпозиции.
79.Динамическое программирование. Восходящее и нисходящее динамическое программирование.
80.Задача определения наиболее длинной последовательности.