博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
十四、Mysql之B-Tree
阅读量:6583 次
发布时间:2019-06-24

本文共 689 字,大约阅读时间需要 2 分钟。

一、何为B-Tree?

  B-Tree就是我们常说的B树,没有B减树,它是一种多路搜索树(并不是二叉的);
  B树的特征:
    1、根结点至少有两个子女。
    2、每个中间节点都包含k-1个元素和k个孩子,其中 ceil(m/2) ≤ k ≤ m
    3、每一个叶子节点都包含k-1个元素,其中 ceil(m/2) ≤ k ≤ m
    4、所有的叶子结点都位于同一层。
    5、每个节点中的元素升序排序,节点当中k-1个元素正好是k个孩子包含的元素的值域划分
    6、每个结点的结构为:(n,A0,K1,A1,K2,A2,… ,Kn,An)
    其中,Ki(1≤i≤n)为关键字,且Ki<Ki+1(1≤i≤n-1)。 Ai(0≤i≤n)为指向子树根结点的指针。且Ai所指子树所有结点中的关键字均小于Ki+1。 n为结点中关键字的个数,满足ceil(m/2)-1≤n≤m-1。
    7、非叶子结点的关键字个数=指向儿子的指针个数-1
  简诉:
  B-tree中,每个结点包含:
  1、结点所含关键字的个数;
  2、指向父结点的指针;
  3、关键字(下图中的数字);
  4、指向子结点的指针(下图中含p的);
如图:

图中:数字表示关键字,p表示指针,data表示除关键字外的信息

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

转载地址:http://yssno.baihongyu.com/

你可能感兴趣的文章
JavaScript 的 async/await : async 和 await 在干什么
查看>>
hadoop_学习_00_资源帖
查看>>
CDH中配置HDFS HA
查看>>
Zeta.js之内置服务
查看>>
CSS-选择器6-兄弟选择器
查看>>
吴恩达《机器学习》课程总结(9)神经网络的学习
查看>>
Binary Tree Paths
查看>>
Android开源之仿微信UI
查看>>
大蕉毕业三周年了,有话对你说 No.103
查看>>
Workbox3 - ServiceWorker可以如此简单
查看>>
重温Servlet学习笔记--session对象
查看>>
webpack + vue
查看>>
Android两条并排RecyclerView实时联动滑动增强
查看>>
进程、轻量级进程(LWP)、线程
查看>>
虽获滴滴投资,但我们依旧不看好ofo的未来
查看>>
有人WIFI模块使用详解
查看>>
爱普生AR眼镜应用场景图鉴:八个领域案例都在这里
查看>>
亚马逊于英国正式推出无人机送货,首单仅花13分钟
查看>>
Jenkins使用jenkins-cli.jar进行远程调用时出现“ERROR: No such job 'test'”或者权限不够等问题解决(Windows)...
查看>>
VMware给虚拟机绑定物理网卡
查看>>