`
sealbird
  • 浏览: 571886 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

【查找结构5】多路查找树/B~树/B+树

 
阅读更多
from http://hxraid.iteye.com/blog/611105

B~树,又叫平衡多路查找树。一棵m阶的B~树 (m叉树)的特性如下:

1)  树中每个结点至多有m个孩子;

2)  除根结点和叶子结点外,其它每个结点至少有[m/2]个孩子;

3)  若根结点不是叶子结点,则至少有2个孩子;

4)  所有叶子结点都出现在同一层,叶子结点不包含任何关键字信息(可以看做是外部接点或查询失败的接点,实际上这些结点不存在,指向这些结点的指针都为null);

5)  每个非终端结点中包含有n个关键字信息: (n,A0,K1,A1,K2,A2,......,Kn,An)。其中,

     a)   Ki (i=1...n)为关键字,且关键字按顺序排序Ki < K(i-1)。

     b)   Ai为指向子树根的接点,且指针A(i-1)指向子树种所有结点的关键字均小于Ki,但都大于K(i-1)。

     c)   关键字的个数n必须满足:  [m/2]-1 <= n <= m-1

分享到:
评论

相关推荐

    从B_树、B+_树、B_树谈到R_树.doc

    第一节、B树、B+树、B*树 1.前言: 动态查找树主要有:二叉查找树(Binary Search Tree),平衡二叉查找...根据平衡二叉树的启发,自然就想到平衡多路查找树结构,也就是这篇文章所要阐述的第一个主题B~tree(B树结构)。

    数据结构-树(三):多路搜索树B树、B+树

    多路搜索树 完全二叉树高度:O(log2N),其中2为对数 完全M路搜索树的高度:O(logmN),其中M为对数,树每层的节点数 M路搜索树主要用于解决数据量大无法全部加载到内存的数据存储。通过增加每层节点的个数和在每个...

    BPlusTree_capturedrx5_高级数据结构B+树实现_balance_

    B+树的实现,用的是C++,全称Balance-tree(平衡多路查找树),平衡的意思是左边和右边分布均匀。多路的意思是相对于二叉树而言的,二叉树就是二路查找树,查找时只有两条路,而B-tree有多条路,即父节点有多个子节点...

    数据结构-算法-B树

    想研究算法的可以参考一下, 本文所讨论的m路查找树多为可以动态调整的多路查找树

    数据结构与算法的介绍及应用

    二叉排序树查找,Python3 数据结构与算法的... 查找算法: 顺序查找、二分查找、哈希表查找、二叉查找树、平衡二叉查找树(AVL树、红黑树)、平衡多路查找树(B树、B+树);4. LeetCode 和《剑指Offer》刷题、多种方法的题解

    【超全!】图解Java数据结构和算法(共195集)【资料+视频+课件+代码+笔记】

    稀疏数组、单向队列、环形队列、单向链表、双向链表、环形链表、约瑟夫...多路查找树(B树B+树和B*树)、图、图的DFS算法和BFS、程序员常用10大算法、二分查找算法(非递归)、分治算法、动态规划算法、KMP算法、贪心算法...

    数据结构(C语言版)\Java数据结构和算

    第11章 多路查找树 11.1 m-路查找树 11.2 B-树 11.3 B+树 11.4 参考文献和选读材料 第12章 数字查找结构 12.1 数字查找树 12. 2 二路Trie树和Patricia树 12.3 多路Trie树 12.4 后缀树 12.5 Trie树和互联网...

    MySQL面试高频问题

    首先要知道Hash索引和B+树索引的底层实现原理:hash索引底层就是hash表,进行查找时,调用一次hash函数就可以获取到相应的键值,之后进行回表查询获得实际数据.B+树底层实现是多路平衡查找树.对于每一次的查询都是从根...

    数据结构(C语言版)

    9.2.2 B树和B+树 9.2.3 键树 9.3 哈希表 9.3.1 什么是哈希表 9.3.2 哈希函数的构造方法 9.3.3 处理冲突的方法 9.3.4 哈希表的查找及其分析 第10章 内部排序 10.1 概述 10.2 插入排序 10.2.1 直接插入排序 10.2.2 ...

    基于B-树和B+树的使用:数据搜索和数据库索引的详细介绍

    B-树是一种平衡的多路查找树,它在文件系统中很有用。 定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树:⑴树中每个结点至多有m 棵子树;⑵若根结点不是叶子结点,则至少有两棵子树; ⑶除根结点之外的...

    B_树的性能分析及其在数据搜索中的应用

    在数据文件中数据搜索可用顺序查找等方法实现但是这些方法速度较慢这里介绍了多路查找树 树 给出其定义和性能分析并且对它在数据搜索中的应用进行了举例分析

    MySQL中InnoDB数据结构和索引介绍

    B+树是B-树的变种的多路绝对平衡查找树,他拥有B-树的优势 B+树扫库、表能力更强 B+树的磁盘读写能力更强 B+树的排序能力更强 B+树的查询效率更加稳定 二、B+Tree介绍 b+树有个特点,数据都是存在子节点上(叶子节点...

    数据结构(C语言版)[严蔚敏]

    9.2.2 B树和B+树 9.2.3 键树 9.3 哈希表 9.3.1 什么是哈希表 9.3.2 哈希函数的构造方法 9.3.3 处理冲突的方法 9.3.4 哈希表的查找及其分析 第10章 内部排序 10.1 概述 10.2 插入排序 10.2.1 直接插入排序 10.2.2 ...

    《数据结构》(C语言版)严蔚敏

    9.2.2 B树和B+树 9.2.3 键树 9.3 哈希表 9.3.1 什么是哈希表 9.3.2 哈希函数的构造方法 9.3.3 处理冲突的方法 9.3.4 哈希表的查找及其分析 第10章 内部排序 10.1 概述 10.2 插入排序 10.2.1 直接插入排序 10.2.2 ...

    数据结构 c语言版

    9.2.2 B树和B+树 9.2.3 键树 9.3 哈希表 9.3.1 什么是哈希表 9.3.2 哈希函数的构造方法 9.3.3 处理冲突的方法 9.3.4 哈希表的查找及其分析 第10章 内部排序 10.1 概述 10.2 插入排序 10.2.1 直接插入排序...

    c语言数据结构算法演示(Windows版)

    整个屏幕分为上、下两个窗口,上窗口演示插入或删除结点过程中B-树或B+ 树结构的变化状况;下窗口内显示如查找关键字、插入位置、结点分裂等操作信息。下窗口上面左侧的小窗口为编辑窗口,由用户输入待插或待删的...

    严蔚敏:数据结构题集(C语言版)

    9.2.2 B_树和B+树 9.2.3 键树 9.3 哈希表 9.3.1 什么是哈希表 9.3.2 哈希函数的构造方法 9.3.3 处理冲突的方法 9.3.4 哈希表的查找及其分析 第10章 内部排序 10.1 概述 10.2 插入排序 10.2.1 直接插入排序 10.2.2 ...

    [数据结构(C语言版)].严蔚敏_吴伟民.高清扫描版.rar

    9.2.2 B树和B+树 9.2.3 键树 9.3 哈希表 9.3.1 什么是哈希表 9.3.2 哈希函数的构造方法 9.3.3 处理冲突的方法 9.3.4 哈希表的查找及其分析 第10章 内部排序 10.1 概述 10.2 插入排序 10.2.1 直接插入排序 10.2.2 ...

    谭浩强C语言程序设计,C++程序设计,严蔚敏数据结构,高一凡数据结构算法分析与实现.rar

    3.9 多分支选择结构和switch语句 3.10 编写选择结构的程序 3.11 循环结构和循环语句 3.11.1 用while语句构成循环 3.11.2 用do-while语句构成循环 3.11.3 用for语句构成循环 3.11.4 几种循环的比较 3.12 循环的嵌套 ...

    数据结构的电子书(chm版)

    9、2、2 B—树和B+树 9、2、3 键树 9、3、0 哈希表 9、3、1 什么是哈希表 9、3、2 哈希函数的构造方法 9、3、3 处理冲突的方法 9、3、4 哈希表的查找及其分析 实验七 10、0、0 内部排序 10、1、0 概述 10、2、0 ...

Global site tag (gtag.js) - Google Analytics