Теория сортировки - Часть 7
Заключение
В разделах 3 и 4 использованы старые методы для единообразного представления и анализа быстрой сортировки и троичных деревьев поиска при работе с составными ключами. В следующих разделах описаны соответствующие коды.
Быстрая сортировка для составных ключей приводит к программе 1 и ее улучшенному варианту, который может конкурировать с лучшими из известных алгоритмов сортировки строк. Этим, однако, не исчерпываются возможные применения алгоритма, лежащего в основе программы. Мы полагаем, что быстрая сортировка для составных ключей может оказаться практичной в системах сортировок с составными полями – таких, как описанная Линдерманом [12]. Этот алгоритм можно использовать также для сортировки целых чисел, если сравнивать их побайтно.
В разделе 5 показано, что троичные деревья поиска обеспечивают эффективную реализацию таблиц имен, а в разделе 6, – что эти структуры могут быстро отвечать на более сложные запросы. Троичные деревья поиска особенно хорошо подходят для случая, когда ключами, по которым происходит поиск, являются длинные строки, и они уже используются в коммерческой системе. Продвинутые алгоритмы поиска обещают оказаться полезными в практических приложениях, кроме того, они представляют ряд интересных проблем алгоритмического анализа.
Глоссарий
Term |
Термин |
balanced tree |
сбалансированное дерево |
binary tree |
бинарное дерево |
divide-and-conquer algorithm |
алгоритм декомпозиции;
алгоритм типа "разделяй и властвуй" |
external path length |
длина внешнего пути (сумма
длин путей от корня дерева к его листьям) |
Hamming distance |
расстояние Хемминга |
hash function |
хеширующая функция;
функция расстановки |
in-place |
на месте (без дополнительной
памяти) |
internal path length |
длина внутреннего пути (сумма
длин путей от корня дерева ко всем его внутренним узлам) |
key |
ключ (значение, по которому
производится поиск) |
multikey data |
данные с составными ключами |
node |
узел |
partial match |
частичное совпадение |
partition |
разбиение |
query |
запрос |
Quicksort |
быстрая сортировка |
radix sort |
поразрядная сортировка |
search tree |
дерево поиска |
searching |
поиск |
sorting |
сортировка |
string key |
текстовый ключ |
suffix tree |
суффиксное дерево |
symbol table |
таблица имен |
ternary tree |
троичное дерево |
tournament tree |
турнирное дерево |
trie |
бор; TRIE-структура |
|