【发布时间】:2011-03-31 19:47:53
【问题描述】:
我正在尝试根据“算法简介”中的“B-Trees”一章来实现 B-Tree。
我不太明白的是“最低学位”。在书中指出 degree 是一个 数字,表示节点可以持有的键数的下限/上限。它进一步说:
-
每个非根节点都至少存储
t - 1键并拥有t子节点。 -
每个节点最多存储
2*t - 1键,并有2*t子节点。
所以你得到 t = 2:
-
t - 1= 1 个键和 t = 2 个孩子 -
2*t - 1= 3 把钥匙和 4 个孩子
对于 t = 3
-
t - 1= 2 个键和 t = 3 个孩子 -
2*t - 1= 5 把钥匙和 6 个孩子
现在问题来了:B-Tree 中的节点似乎只能在已满时存储 odd 个键。
为什么不能有一个节点,比如说最多 4 个键和 5 个子节点?它与拆分节点有关吗?
【问题讨论】:
-
in "Introduction to Algorithms"- 你瞧! 哪个“算法简介”:作者?出版商?语言?国际标准书号?超链接?
标签: algorithm data-structures b-tree