树 B树和B+树

B树

  1. 定义

    • B树是一种平衡的多路查找树。它主要用于数据库和文件系统等场景,因为这些场景需要频繁地进行查找、插入和删除操作,而且数据量通常比较大。
  2. 性质

    • 每个节点最多有m个孩子(m是B树的阶数),最少有ceil(m / 2)个孩子(除了根节点)。例如,对于一个4阶B树,每个节点最多有4个孩子,最少有2个孩子。

    • 每个节点最多有m - 1个关键字,最少有ceil(m / 2) - 1个关键字(除了根节点)。关键字是用于查找的值,它们在节点内是有序的。

    • 所有叶子节点都出现在同一层次上。这保证了B树的平衡性,使得查找操作的时间复杂度为O(logn)。

    • 如果一个节点有k个关键字,那么它就有k + 1个孩子。例如,一个有3个关键字的节点,它就有4个孩子,这些孩子分别对应关键字划分的4个区间。

B+树

1.定义

B+树是一种平衡的多路查找树,它是B树的一种变体。B+树在数据库和文件系统等场景中被广泛应用,主要用于组织大量的有序数据,以便高效地进行查找、插入和删除操作。

相关推荐
SelectDB技术团队3 小时前
ClickHouse 存日志的能力边界:并发、检索与 trace 回放的实测对照
数据结构·数据库·clickhouse·日志分析·apache doris·日志存储
垆边人似月.3 小时前
华为算法题:最长连续递增子序列的变
数据结构·算法·leetcode
w_zero_one4 小时前
链表(2)
java·数据结构·链表
kukubuzai4 小时前
二分查找系列一
数据结构·算法·leetcode
wzdark5 小时前
算法与数据结构教学的可视化新模式探索4
数据结构
hzxpaipai6 小时前
企业官网后台怎么设计?从产品分类、参数到资料下载的数据结构
数据结构
不会就选b14 小时前
算法日常・每日刷题--<贪心>25
数据结构·算法
Cccp.12317 小时前
【leetcode】(七)前缀树和贪心算法
数据结构·leetcode·贪心算法
Logic10120 小时前
C语言/数据结构位运算题解:异或XOR找出多任务下载器中的“独特下载速度“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
yexianglunbai1 天前
Redis 详解:从核心数据结构到高可用架构实战
数据结构