Как будет выглядеть это B-дерево? - PullRequest
3 голосов
/ 06 апреля 2010

B-дерево имеет порядок 4, то есть узел может содержать 4 указателя и 3 клавиши.

Вставлено следующее: A G I Y

Поскольку они не могут все поместиться в один узел, я знаю, что узел будет разделен. Итак, я знаю, что после вставки этих вещей будет корневой узел с двумя дочерними узлами, но я точно не знаю, как они будут выглядеть.

Ответы [ 2 ]

3 голосов
/ 06 апреля 2010
A

А вставлено

AG

G вставлено

AGI

Я вставлен

  G
 / \
A   I

При вставке Y узел заполнен, разделен на 2 узла и проходит по середине, G

  G
 / \
A   IY

Y вставлено

1 голос
/ 08 ноября 2013

Вот анимация операций:

http://ysangkok.github.io/js-clrs-btree/btree.html#{"actions":[["initTree",{"keys":[]},2],["insert","A"],["insert","G"],["insert","I"],["insert","Y"]]}

Второй параметр для initTree - это порядок, но с использованием другого определения.Максимальное количество ключей в этой программе 2 * order-1.Поэтому я установил порядок на 2, и он соответствует вашему примеру.

...