您的位置:首页 > 其它

B-树系列

2020-04-17 09:47 246 查看

B-树家族:
1.多叉的平衡搜索树(允许一个结点有多个孩子)
习惯上可以把 B- 树 称为 M- 树,M的意思是结点中最多有多少个孩子

2.特性
K(甲) < Ka < K(乙) < Kb < K(丙)
3.查找思路:
小于k,在k之前的子树中找
等于k,找到了
大于k,比较下一个k,如果没有后续k了,就在最后一个子树中查找
4.插入过程
首先所有的插入操作,必须都是在叶子结点上
B- 树的修复:分裂修复
分裂:把 key 个数超出的结点分裂成两个结点
左边结点:[0,mid) 右边结点:(mid,length)
中间的 key 保存在父节点中,随着分裂,可能引起父节点也破坏规则,进而导致父节点继续分裂
注意:
(1)B-树的生长是朝上生长的,随着分裂长出的结点,只有根节点才会新建结点
(2)B-树能保证所有的叶子都在同一层(从根到所以路径的长度是一样长)
5.二叉平衡搜索树和多叉平衡搜索树的区别
在 key 的数量一定的情况下,多叉树的高度一定是小于二叉树的
6.B-树的适用场景
数据保存在硬盘中(包含其他低速IO设备)时,所用的平衡搜索树。
MySQL中为什么用 B- 树做索引,而不用红黑树,因为MySQL的数据存储在硬盘中

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: