设有3阶B一树,如图1-4所示。 从(1)得到的B-树上删除66。试画出删除后的B-树。

admin2014-04-17  40

问题 设有3阶B一树,如图1-4所示。

从(1)得到的B-树上删除66。试画出删除后的B-树。

选项

答案B一树的删除过程与插入过程类似,只是稍微复杂一些。因为要使删除后的结点中的关键字个数≥|m/2|-1,这就将涉及结点的“合并”问题。 删除66:首先需要根据B一树的查找算法找到关键字所在的结点,然后在该结点上删除关键字,具体详细过程参考教材。找到66所在的结点之后,发现删除之后关键字个数不满足≥|m/2|-1,所以需要像兄弟结点借,但是兄弟结点只有一个关键字97,借不了。那么唯一的办法就是把当初和它们分裂出去的关键字找回来,即88。但是,88找回来之后(也就是双亲结点),双亲结点又不满足≥[m/2]-1,只有继续找更早以前被分裂出去的60,最后的结果如图1-14所示。 [*]

解析
转载请注明原文地址:https://kaotiyun.com/show/Pixi777K
0

最新回复(0)