1
我处理在B树的删除在非常特殊的情况下缺失 - M = 5
M = 5 - 即 - 在节点密钥的最大数目是4并且在键的最小数量节点是2
现在当使用防御方法(我必须使用这个)在BTree中删除时,当我接近一个节点时,我必须保证它有一个以上所需的关键字。
这是我的问题 - 比方说,我有一个根和一个键,两个孩子每个都有两个键。 当我接近这些孩子时,我必须保证它至少有三把钥匙(因为M = 5)。
我有两种方式来做到这一点 - 从邻居借用或从父亲借来并入。我不能借用邻居,因为它拥有至少2个密钥,但是从父亲借用并且合并会创建一个包含5个密钥的节点 - 并且它超过了允许密钥的最大值(如M = 5)。
在这种情况下该怎么办? 更具体地说 - 对待这种情况的正确方法是什么
Thanks @DarthGizka! 这确实是经典的B-Tree方法 - 即M! –