b树与b+树的区别

1.学会使用
2.找到类似的解决方案
3.源码分析

b树与b+树区别

b+树特征
  1. b+树单一节点存储的元素更多,因为b+树在非叶子结点上不存取卫星数据,拥有k个子树的中间节点有k个元素
  2. 所有中间节点元素都存在于子节点中,在子节点的元素中是最大或者最小元素
  3. 所有的叶子结点中包含了全部元素的信息,及指向含这些元素记录的指针,且叶子结点本身依关键字的大小自小而大顺序链接。

上述特征使b+树有以下优势,也是导致与b树不同的原因

b+树优势

1.索引查询的数据主要受限于硬盘的I/O速度,查询I/O次数越少,速度越快。b树/b+树的每个节点的元素可以理解成一次I/O读取。因为b+树中间节点不含卫星数据,所以单一节点存储的元素更多,在同样磁盘页上较b树可以存储更多节点元素,这样就意味着,b+树高度会比b树矮,同行存取元素更多,在查询时执行的I/O读取次数会更少。
2.因为b+树的卫星数据都存在叶子节点中,所以匹配查询结果必须查到叶子结点,而b树不同,卫星数据存在每一个元素中,所以查找并不稳定,最好结果是根节点最坏是叶子结点
3.b树的范围查找是从根节点开始进行中序遍历,而b+树只需要找到范围下限再通过链表指针找到范围上限即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值