B树和B+树

关于结构的区别:

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

关于检索的区别:

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

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

相关推荐
CoderYanger7 小时前
C.滑动窗口-求子数组个数-越长越合法——2799. 统计完全子数组的数目
java·c语言·开发语言·数据结构·算法·leetcode·职场和发展
萌>__<新7 小时前
力扣打卡每日一题————除自身外所有元素的乘积
数据结构·算法
xu_yule8 小时前
算法基础—搜索(2)【记忆化搜索+BFS+01BFS+Floodfill]
数据结构·算法
Queenie_Charlie9 小时前
数字去重(set)
数据结构·c++·set
Ayanami_Reii10 小时前
区间不同数的个数-树状数组/线段树/莫队/主席树
数据结构·c++·算法·线段树·树状数组·主席树·莫队
CoderYanger10 小时前
C.滑动窗口-求子数组个数-越长越合法——3325. 字符至少出现 K 次的子字符串 I
c语言·数据结构·算法·leetcode·职场和发展·哈希算法·散列表
sin_hielo11 小时前
leetcode 3606
数据结构·算法·leetcode
萌>__<新12 小时前
力扣打卡每日一题————最小覆盖子串
数据结构·算法·leetcode·滑动窗口·哈希表
长安er14 小时前
LeetCode 83/237/82 链表删除问题-盒子模型
数据结构·算法·leetcode·链表·力扣
重生之后端学习14 小时前
56. 合并区间
java·数据结构·后端·算法·leetcode·职场和发展