深入学习二叉树(07)B树

问题背景

在大型的数据库存储中,实现索引查找,如果采用二叉查找树的查找的话,由于节点的存储数据是有限的,这样如果数据库很大的话,就会导致树的深度过大从而造成磁盘 IO 操作过于频繁,就会造成效率低下

为了解决问题,可以减少树的深度。基本思想是:采用多叉结构,也就是说因为磁盘的操作费事费资源,由于磁盘查找存取的次数往往由树的高度所决定的,所以根据平衡二叉树的启发,我们找到平衡多路查

找树的结构,也就是 B-tree

B-tree 简介

B-tree 树是我们常说的 B 树,没有 B减树,B树有如下几个特性

根节点至少有两个子女

  1. 每个中间节点都包含k-1 个元素和 k 个孩子,其中 m/2 <=k <=m
  2. 每个叶子节点都包含k-1 个元素,其中 m/2 <=k <=m
  3. 所有的叶子节点都位于同一层
  4. 每个节点的元素从小到大排列,节点当中k-1个元素正好是k个孩子包含的元素的值域分划
原文地址:https://www.cnblogs.com/baizhuang/p/11612814.html