Алгоритмы структуры данных
--- ТЕМА1
--- Построение и анализ алгоритмов
--- 1.1. От задачи к программе
Листинг 1.1. Первое приближение программы greedy
Листинг 1. 3.Измененная программа greedy
1.3. Типы данных, структуры данных и абстрактные типы данных
1.4. Время выполнения программ
1.5. Вычисление времени выполнения программ
Программы с операторами безусловного перехода
1.6. Практика программирования
--- Основные абстрактные типы данных
--- 2.1. Абстрактный тип данных „Список"
Реализация списков с помощью указателей
Листинг 2.4. Реализация некоторых операторов при представлении 'списков' с помощью указателей
Листинг 2.6. Реализация некоторых операторов списка при использовании курсоров
Листинг 2.7. Удаление элемента из дважды связного списка
Реализация стеков с помощью массивов
Реализация очередей с помощью указателей
Реализация очередей с помощью циклических массивов
Листинг 2.1.1. Реализация очередей с помощью циклических массивов
Листинг 2.12. Реализация операторов отображений посредством массива
Листинг 2.13. Реализация отображения посредством списков
2.6. Стеки и рекурсивные процедуры
Прямой, обратный и симметричный обходы дерева
Листинг 3.1. Рекурсивные процедуры обхода деревьев
Помеченные деревья и деревья выражений
3.2. Абстрактный тип данных TREE
Представление деревьев с использованием списков сыновей
Листинг 3.6. Функции, использующие представление деревьев посредством связанных списков
Операторы АТД, основанные на множествах
Листинг 4.1. Программа вычисления областей действий операторов определения переменных
4.3. Реализация множеств посредством двоичных векторов
4.4. Реализация множеств посредством связанных списков
Листинг 4.3. Процедура INTERSECTION, использующая связанные списки
Листинг 4.4. Процедура вставки элемента
Листинг 4.6. Объявления типов и процедуры реализации словаря посредством массива
4.7. Структуры данных, основанные на хеш-таблицах
Листинг 4.8. Реализация словарей посредством открытой хеш-таблицы
Листинг 4.9. Реализация словаря посредством закрытого хеширования
4.8. Оценка эффективности хеш-функций
„Случайные" методики разрешения коллизий
Листинг 4.11. Выделение процессам машинного времени
Реализация очереди с приоритетами посредством частично упорядоченных деревьев
Реализация частично упорядоченных деревьев посредством массивов
4.12. Некоторые структуры сложных множеств
Листинг 4.14. Реализация поиска в мультисписке
Эффективность двойных структур данных
Листинг 5.2. Вставка нового элемента в дерево двоичного поиска
5.2. Анализ времени выполнения операторов
Эффективность структуры данных нагруженных деревьев
5.4. Реализация множеств посредством сбалансированных деревьев
Листинг 5.9. Процедура вставки в 2-3 дерево
5.5. Множества с операторами MERGE и FIND
Листинг5.14.Операторы АТД МFSET
5.6. АТД с операторами MERGE и SPLIT
Листинг 5.15. Программа нахождения НОП
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 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 81 82 83