Все статьи и конспекты
B-деревоДерево порядковой статистикиИнтервальные деревьяСтруктуры данных
1 мин чтение

Расширение структур данных: Дерево порядковой статистики, Интервальные деревья и B-деревья

Методология расширения структур данных (CLRS). Дерево порядковой статистики (OS-Select, OS-Rank), интервальные деревья и трихотомия отрезков. Устройство B-деревьев: разбиение, слияние и поиск.

Исходная заготовка: полнота объяснения и примеров ожидает редакторской проверки.

1. Дерево порядковой статистики (Order Statistic Tree)

К каждому узлу красно-чёрного дерева добавляется поле size[x] — число узлов в поддереве.

size[x]=size[x.left]+size[x.right]+1\text{size}[x] = \text{size}[x.left] + \text{size}[x.right] + 1

Операции за O(log⁡N)O(\log N):

  • OS-Select(x, i): поиск ii-го наименьшего ключа;

  • OS-Rank(T, x): определение ранга (порядкового номера) ключа xx.

  • 2. B-деревья (B-Trees) для внешних носителей

    B-дерево порядка t≥2t \ge 2 оптимизировано под блочный ввод-вывод дисков:

  • Каждый узел содержит от t−1t-1 до 2t−12t-1 ключей;

  • Все листья находятся на строго одинаковой глубине;

  • Высота дерева h≤log⁡tn+12h \le \log_t \frac{n+1}{2}, что при t=1000t=1000 даёт высоту ≤3\le 3 для миллиарда записей!
  • Что дальше?

    Вернитесь к обучению и выберите следующий материал.

    Изучено — к обучению →

    Отметка сохранится в этом браузере. Её можно отменить или снять кнопкой «Изучено».