
Алгоритмы и структуры данных. Новая версия для Оберона
ПредисловиеФундаментальные структуры данныхВведениеПонятие типа данныхСтандартные примитивные типыТип INTEGERТип REALТип BOOLEANТип CHARТип SETМассивыЗаписиПредставление массивов, записей и множествПредставление массивовПредставление записейПредставление множествФайлы или последовательностиЭлементарные операции с файламиБуферизация последовательностейБуферизация обмена между параллельными процессамиВвод и вывод текстаПоискЛинейный поискПоиск делением пополамПоиск в таблицеПоиск образца в тексте (string search)Простой поиск образца в текстеАлгоритм Кнута, Морриса и ПраттаАлгоритм Бойера и МураУпражненияЛитератураСортировкаВведениеСортировка массивовПростая сортировка вставкамиПростая сортировка выборомПростая сортировка обменами (пузырьковая)Эффективные методы сортировкиСортировка вставками с уменьшающимися расстояниямиТурнирная сортировкаБыстрая сортировкаПоиск медианыСравнение методов сортировки массивовСортировка последовательностейПростые слиянияЕстественные слиянияСбалансированные многопутевые слиянияМногофазная сортировкаРаспределение начальных серийУпражненияЛитератураРекурсивные алгоритмыВведениеКогда не следует использовать рекурсиюДва примера рекурсивных программАлгоритмы с возвратомЗадача о восьми ферзяхЗадача о стабильных бракахЗадача оптимального выбораУпражненияЛитератураДинамические структуры данныхРекурсивные типы данныхУказателиЛинейные спискиОсновные операцииУпорядоченные списки и перестройка списковПрименение: топологическая сортировкаДеревьяОсновные понятия и определенияОсновные операции с двоичными деревьямиПоиск и вставка в деревьяхУдаление из дереваАнализ поиска по дереву со вставкамиСбалансированные деревьяВставка в сбалансированное деревоУдаление из сбалансированного дереваОптимальные деревья поискаБ-деревья (B-trees)Сильно ветвящиеся Б-деревьяДвоичные Б-деревьяПриоритетные деревья поискаУпражненияЛитератураХэшированиеВведениеВыбор хэш-функцииРазрешение коллизийАнализ хэшированияУпражненияЛитератураЛитература