多路平衡查找树
1.定义
B树的阶:B树中所有结点的孩子个数的最大值,表示成m
m阶B树:空树或者满足如下特性的m叉树
特性:
1.树中每个结点最多子树 m 关键字m-1
2.根节点不是终端结点,至少有两棵子树
3.根结点除外,子树,m/2向上取整,关键字-1(要尽量高度低)
4.叶子结点出现在同一层次上,不带信息(要是个平衡树)
5.本质上还要是个查找树
2.B树的插入与删除
插入:找中间关键字,提升为父节点,如果满了,则往上一级提升
删除:
1.非终端节点:找到该节点的前驱节点或者后集结点,我们选择前驱节点,进行补充
2.终端节点:若兄弟节点足够,借了父节点,然后将兄弟节点给父亲
兄弟节点不足够,左右父合并,这其中有个问题没有解决,就是高度减少时,如何进行解决问题?