一颗N阶的B-Tree树中各个节点的关键码的个数不能超过N-1,各个节点的孩子节点数不能超过N。
执行插入38操作:
由于被插入的节点中关键码的个数超过了2,则执行分裂,分裂的过程如下:
将37左边和右边两边分隔开,37提升。
B+Tree
在B-Tree的基础上的变种。
1 N个关键码对应N个子树,即关键码与子树一一对应。
2 关键码为子树关键码中最大的值,即不存在两个关键码之间还存在一个子树。
3 终端节点通过单链表连接起来,并且设置了头指针。
2
−
3
树
可
以
有
1
、
2
个
关
键
码
,
对
应
2
、
3
个
子
树
,
存
在
介
于
两
个
关
键
码
之
间
存
在
一
个
子
树
,
所
以
叫
2
−
3
树
\color{#FF0000}{2-3树可以有1、2个关键码,对应2、3个子树,存在介于两个关键码之间存在一个子树,所以叫2-3树}
2−3树可以有1、2个关键码,对应2、3个子树,存在介于两个关键码之间存在一个子树,所以叫2−3树
m
阶
B
树
,
每
个
节
点
最
多
有
m
−
1
个
关
键
码
,
m
个
子
树
,
存
在
介
于
两
个
关
键
码
之
间
存
在
一
个
子
树
。
\color{#FF0000}{m阶B树,每个节点最多有m-1个关键码,m个子树,存在介于两个关键码之间存在一个子树。}
m阶B树,每个节点最多有m−1个关键码,m个子树,存在介于两个关键码之间存在一个子树。
m
阶
B
+
树
,
每
个
节
点
最
多
有
m
个
关
键
码
,
最
多
有
m
个
子
树
,
不
存
在
介
于
两
个
关
键
码
之
间
存
在
一
个
子
树
,
\color{#FF0000}{m阶B+树,每个节点最多有m个关键码,最多有m个子树,不存在介于两个关键码之间存在一个子树,}
m阶B+树,每个节点最多有m个关键码,最多有m个子树,不存在介于两个关键码之间存在一个子树,
关
键
码
永
远
大
于
子
树
中
的
关
键
码
\color{#FF0000}{关键码永远大于子树中的关键码}
关键码永远大于子树中的关键码