数据结构 之 B-树
前言
什么是B-Tree
最近在看数据库相关的文档,索引使用的B-Tree 的方式来进行存储查询,由于之前没有怎么了解过,特地抽时间了解一下
关于B 网上大多数的翻译为Balace 平衡
在了解这个数据结构,我们先来了解几个基本概念
根节点
一种没有父节点的节点。
内部节点
内部节点是除叶子节点和根节点之外的所有节点,拥有父节点和子节点
叶子节点
一棵树当中没有子结点(即度为0)的结点称为叶子结点,简称“叶子”。 叶子是指出度为0的结点,又称为终端结点。
阶
在很多文章都会提到 多少多少阶树
什么阶呢?
节点中拥有最大的子节点数
深度或高度
树的层级数
好了了解这些后我们再看,B树的定义
定义
B树是一种平衡的多分树,通常我们说m阶的B树,它必须满足如下条件:
1、每个节点最多拥有m个子树
2、根节点至少有2个子树
3、内部节点至少拥有m/2颗子树(除根节点和叶子节点外都是内部节点)
4、所有叶子节点都在同一层、每个节点最多可以有m-1个key,并且以升序排列
示例
本篇先当这里,有空再更新…