查找之B+树

目录

一、定义

二、B与B+对比

下一篇:散列表(Hash Table)


一、定义

B+树示例

思想很想分块查找

符合以下条件:

其中记录代表的是该结点对应存储的各种数据记录如学生信息(所以叶结点包含所有的关键字,也是n个关键字对应n个分支),除了叶子结点,其他结点都是起到一个索引作用

为什么当根结点不是叶子时必须有两颗子树

查找成功的例子:

查找失败的例子

 

无论查找成功或失败,最终一定要走到最下面一层结点

 

 

二、B与B+对比

 

B+树在磁盘读取以及索引上比B树的优势

B+树和B树都可以将硬盘中记录较高层结点磁盘块读入用来索引找到我们想要查找的信息所在的磁块

例如找47

B+树

对于B树也是如此

他们的区别在哪?

由于从磁盘读入内存是很耗费时间的,所以不难看出树的高度越低越好,且每个磁块的大小是固定的例如1kb

B+树虽然要找到叶结点才能找到我们要的信息,但是前面的索引耗费的空间是非常少的可以索引更多的叶子磁块,使树高变矮。

对于B树每个结点都是实打实存了记录的所以可以索引的结少,会使树高变低,频繁读入磁盘进内存,且查找速度不稳定(有的第一二层就找到了,有的要找到终端层)。

 

这点应用在很多方面例如:mysql的索引实现以及操作系统的文件系统

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值