B树与B+树的原理与区别 The principle and difference between B-tree and B + tree

本文介绍了B树与B+树的基本概念和特点。B树是一种自平衡的多路查找树,非叶子节点可以有M个子节点,其关键字个数与指针数量有关。B+树则在B树基础上做了优化,非叶子节点的子树指针与关键字个数相同,所有关键字都在叶子节点出现,搜索过程中会到达叶子节点才结束。这种结构使得B+树更适合用于数据库和文件系统的索引存储。
摘要由CSDN通过智能技术生成

B树与B+树

  • B-tree被称为B树,常常为误称为B减树,这是不正确的.B树的
    ①定义任意非叶子节点最多可以有M个子节点;且M>2;
    ②则根节点的叶子数为:[2,M];
    ③除根节点为的非叶子节点的儿子数为[M/2,M];
    ④每个结点存放至少M/2 - 1 (去上整)且至多M -1 个关键字;(至少为2);
    ⑤非叶子结点的关键字个数 = 指向子节点的指针书 -1;
    ⑥非叶子节点的关键字:K[1],K[2],K[3],…,K[M-1;且K[i] < K[i +1];
    ⑦非叶子结点的指针:P[1], P[2], …, P[M];其中P[1]指向关键字小于K[1]的子树,P[M]指向关键字大于K[M-1]的子树,其它P[i]指向关键字属于(K[i-1], K[i])的子树;
    ⑧所有叶子结点位于同一层;
    在这里插入图片描述

B树的阶数是有用户自己定义的,若阶数为5,如上图所示,就算是没有用上5个叶子节点,它的阶数依然是5,所以很多说叶子节点的最大个数就是阶数的说法是不正确的.因为有时候我们的叶子节点为空,不显示.

B树的查找方式是由根节点开始,向下查找,如果查到立即结束,信息和数据都是放在一起的,所以关键字只会出现一次.搜索可能没有到达叶子节点就结束了.

  • B+tree,又被称为B+树
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值