Несвязанная структура данных
-
Алгоритм поиска в деревьях с объединением по рангу
- Алгоритм поиска в деревьях с объединением по рангу использует сжатие пути для ускорения поиска.
- Сжатие пути позволяет избежать обхода узлов, которые уже были посещены.
- Объединение по рангу позволяет объединить деревья с одинаковым рангом, что уменьшает количество узлов в дереве.
-
Анализ сложности
- Сложность операции поиска в худшем случае составляет O(m log* n), где m — количество операций поиска, а n — количество узлов.
- Сложность операций объединения и поиска остается постоянной с течением времени.
-
Структура данных
- Деревья с объединением по рангу организованы в сегменты, каждый из которых содержит узлы с одинаковым рангом.
- Максимальное количество узлов в сегменте ограничено числом 2^r, где r — ранг узла.
-
Оценка стоимости операций
- Стоимость операций поиска включает в себя обход к корню, обход ссылок с разными сегментами и обход ссылок с одинаковыми сегментами.
- Стоимость операций объединения и поиска оценивается как O(m log* n).
-
Другие структуры данных
- В 1985 году Блюм представил реализацию, которая не использует сжатие пути, но сжимает деревья во время операций.
- Эта реализация имеет сложность O(log n/log log n).
- Пересказана только часть статьи. Для продолжения перейдите к чтению оригинала.
Полный текст статьи: