B+树和B-树

来源:互联网 发布:sql分组查询所有数据 编辑:程序博客网 时间:2024/05/01 08:56

B+树和m阶的B-树的差异在于:

 1.有n棵子树的结点中含有n个关键字。
 2.所有的叶子结点中包含了全部关键字的信息,及指向含这些关键字记录的指针,且叶子结点本身依关键字的大小自小而大顺序链接。
 3.所有的非终端结点可以看成是索引部分,结点中仅含其子树(根结点)中的最大(或最小)关键字。

 

通常在B+树上有两个头指针,一个指向根结点,一个指向关键字最小的叶子结点。 B+树可以进行两种查找运算:
 1.从最小关键字起顺序查找;
 2.从根结点开始,进行随机查找。 
在查找时,若非终端结点上的剧组机等于给定值,并不终止,而是继续向下直到叶子结点。因此,在B+树中,不管查找成功与否,每次查找都是走了一条从根到叶子结点的路径。其余同B-树的查找类似。

B-树的搜索,从根结点开始,对结点内的关键字(有序)序列进行二分查找,如果命中则结束,否则进入查询关键字所属范围的儿子结点;重复,直到所对应的儿子指针为空,或已经是叶子结点。


原创粉丝点击