数据结构B树的删除?高手请进!!

来源:百度知道 编辑:UC知道 时间:2024/05/25 14:48:18
这是一棵三阶B树,请问怎样删除78?
疑问:本来算法是要合并80和85及删除78后余下的关键字节点(这里为null了),一起并到原来的78节点或85节点。但这样一来,原来的父节点(原80节点)的关键字数目也为0了(如下图一),这这种情况下,要是其左兄弟节点中关键字个数含最少个数也罢,便可以合并。但是此处其左节点有55,70两个关键字,可以借出一个,但是借出一个后,原80节点下又只有一个子树,又该怎么办?
到底该怎么办,很迷惑?

(图一):根据其算法,只有在其父节点为根节点时才会删去此空的父节点,此时应该不会删去空的父节点。

(图二):在图一的基础上向B节点的左子树借了一个关键字,然后在75节点中删去75关键字,当然删除以后还要做合并,这是后话了。根据算法描述,只会依次向上处理各节点,但是B这个节点只有一颗子树,显然就不合理了。
点击上面图可以看到清晰的图!只是帮我解答这个问题就可以了。
希望帮我写出过程