当前位置:网站首页>B树和B+树的区别
B树和B+树的区别
2022-04-22 01:44:00 【我是坑货】
首先来介绍一个工具或者是网站(当然是你能打开的情况下),如果对一个数据结构感觉有点问题,可以看看这个网站的演示,不管是插入还删除之类的这些可能在代码上看起来有点难懂的,经过动态演示,会有一个不同的理解。

找你想看的一个数据结构,点进去,比如说我选择了B TreesB树点进去,效果如下:

你自己可以添加元素,删除元素,修改元素去观察数据结构了。
B+树和B树相比的主要区别:
1,就是B+树所有关键码都在叶子节点
2,B+树的叶子节点是带有指针的,且叶节点本身按关键码从小到大顺序连接
3,在搜索过程中,如果查询和内部节点的关键字一致,那么搜索过程不停止,而是继续向下搜索这个分支
对照同样5个元素的排序就知道了
B树

B+树

可以看出来B+树文件系统,数据库系统当中,更有优势,更高效。
B+树更有利于对数据库的扫描 ,因为所有元素都在叶子节点上。
B+树的查询效率更加稳定 ,所谓的稳定就是B树最后就是要找到叶子节点,就是不管你找谁都有从头走到尾,不会出现那个特别长,那个特别短。(这个可以在我推荐的这个工具演示一下寻找某个元素的过程)
B+树没有像B树一样,把一些关键码每层都放一部分,之间存在互相之间的关系,指针。在考虑指针指向内容上,B树没有这些要存,反而数据量大的情况的,占的空间要比B树小。
最后补一下B树,B+树的概念:
一棵m阶B树是一棵平衡的m路搜索树,它或者是空树,或者是满足下列性质的树:
- 树中每个结点至多有m棵子树。(即至多含有m-1个关键字,两颗子树指针夹着一个关键字);
- 若根结点不是终端结点,则至少有两颗子树。(至少一个关键字);
- 除根结点外的所有非叶子结点至少有[m/2]棵子树。(即至少含有[m/2]-1个关键字);
- 所有的叶子结点出现在同一个层次上,不带信息。(就像是折半查找判断树中查找失败的结点)。
- 每一个结点中的关键字满足从左到右依次增大的规则。
B+树是B树上的一个修改或者改版:
- n棵子tree的节点包含n个关键字,不用来保存数据而是保存数据的索引。
- 所有的叶子结点中包含了全部关键字的信息,及指向含这些关键字记录的指针,且叶子结点本身依关键字的大小自小而大顺序链接。
- 所有的非终端结点可以看成是索引部分,结点中仅含其子树中的大(或小)关键字。
- B+树中,数据对象的插入和删除仅在叶节点上进行。
- B+树有2个头指针,一个是树的根节点,一个是小关键码的叶节点。
版权声明
本文为[我是坑货]所创,转载请带上原文链接,感谢
https://blog.csdn.net/FeiChangWuRao/article/details/124311192
边栏推荐
- 命令行自动纠错命令:fuck
- Ali Daniel collates, Android interview multiple-choice questions
- A friend's way
- The idea window cannot be found in multi screen mode
- Bsides-vancouver-2018-workshop target penetration test
- C# UserControl造成内存泄漏
- sql server 不使用账户登录可以远程操纵设定的某个过程或函数,并返回结果吗?
- Oracle 在视图对象中看不见视图,但用select语句可查询到视图数据
- The playback volume exceeds 2000W. Why can these high-energy qiafan videos be "watched repeatedly" by users of station B?
- Appium移动端自动化测试--搭建模拟器和真机环境一
猜你喜欢

Test d'automatisation de l'extrémité mobile appium - - mise en place d'un simulateur et d'un environnement réel
![[several common buttons in swing]](/img/65/18c844d903746512282d65242dd45b.png)
[several common buttons in swing]

MSF series - Eternal Blue vulnerability

The idea window cannot be found in multi screen mode

Node靶机渗透测试

C# UserControl造成内存泄漏

Leetcode1470. 重新排列数组

什么智能合约?dapp合约系统定制技术原理分析

net easy

Zabbix深度监控:多款开源工具构建企业监控新架构
随机推荐
Automatic multiorgan segmentation in thorax CT images using U-net-GAN
Vscode failed to use SSH Remote Connection
MSF系列——简介及基本命令使用
面试链表题
Ali Daniel collates, Android interview multiple-choice questions
[Lua program to control the mobile phone to chat] - it is used to keep the number. You can put down your hand for automatic chat and keep the number
[Acwing] 第 8 场周赛
DVWA series - XSS (cross site script injection (reflective, storage, DOM))
播放量超2000w,这些高能恰饭视频为什么能被B站用户“反复观看”?
经济学人翻译练习4.16期刊——美国国税局
Node target penetration test
分布式事务解决方案
[several common buttons in swing]
Oracle installation server
Code source daily question div1 (201-207)
Code source daily question div1 (301-307)
Economist translation exercise 4.16 Journal - IRS
Learn to let go
[ing] matlab Toolkit - detailed explanation of dynamic copula toolbox 3.0
The playback volume exceeds 2000W. Why can these high-energy qiafan videos be "watched repeatedly" by users of station B?