B树和B+树

关于结构的区别:

B树的所有节点都存储数据;B+树只有叶节点存储数据,内部节点存储的只有键且其叶子节点通过链表相连。

关于检索的区别:

B 树的检索的过程相当于对范围内的每个节点内(这里的节点可能会存储多个有序的值) 的关键字做二分查找,可能还没有到达叶子节点,检索就结束了。对B树来说,节点内部的键是有序的,因此可以用二分查找来快速定位相应的范围。

B+与B树的区别主要在于其叶子节点通过链表相连,该链表结构非常适合范围查询。在进行批量数据处理的时候,链表也可以让叶子节点按顺序遍历而不需要从根节点开始查找。

相关推荐
神的孩子都在歌唱42 分钟前
3423. 循环数组中相邻元素的最大差值 — day97
java·数据结构·算法
艾莉丝努力练剑3 小时前
【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(三)
c语言·开发语言·数据结构·学习·算法
Dubhehug7 小时前
4.B树和B+树的区别?为什么MySQL选择B+树作为索引?
数据库·b树·mysql·面试·b+树
汤姆爱耗儿药8 小时前
专为磁盘存储设计的数据结构——B树
数据结构·b树
许小燚16 小时前
线性表——双向链表
数据结构·链表
qqxhb18 小时前
零基础数据结构与算法——第四章:基础算法-排序(上)
java·数据结构·算法·冒泡·插入·选择
晚云与城19 小时前
【数据结构】顺序表和链表
数据结构·链表
FirstFrost --sy20 小时前
数据结构之二叉树
c语言·数据结构·c++·算法·链表·深度优先·广度优先
Yingye Zhu(HPXXZYY)20 小时前
Codeforces 2021 C Those Who Are With Us
数据结构·c++·算法
liulilittle21 小时前
LinkedList 链表数据结构实现 (OPENPPP2)
开发语言·数据结构·c++·链表