寻找B树的继任者

时间:2013-10-31 03:04:33

标签: algorithm data-structures b-tree

我之前发布了一个关于在平衡二叉搜索树中找到后继的问题。现在我正在阅读B-Trees(其中节点可以有超过2个孩子),它让我想知道如何在B树中找到密钥的后继者?它通常与常规BST相同吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

逻辑类似,但需要稍加修改以处理可能有多个孩子的事实。

和以前一样,查找值。然后,如果块中有任何大于该值的值,请找到它们中最小的值。如果这些值之间的子树中有任何子项,则下降到该子树并在那里取最小值。否则,将后继值作为您在第一步中找到的值。

如果没有后继者,请在树中备份,直到有一个。然后,使用上面的过程来获得继任者。

希望这有帮助!