美文网首页
关于B树

关于B树

作者: Endeavor_ac89 | 来源:发表于2019-05-09 14:44 被阅读0次

感觉B树的知识点有点繁琐,经过一天的复习,我总结了一下B树比较重要的几个点。(错误的望指正

(1)首先B树是一颗m叉搜索树。其特点是:

    除了根节点之外,每个节点最少有m/2个孩子,最多有m个孩子。也就是说,除根结点之外每个节点,每个节点最少有m/2-1个关键字,最多有m-1个关键字。根节点最多有m-1个关键字,m个孩子;最少有一关键字,两个孩子。

(2)关于B树的建立和删除

    我们在建立B树的时候,首先将第一个节点填满,当关键字的个数超过其最大容量时,我们需要将中间的元素(m/2)提起。然后根据规则继续插入。

当我们在删除元素的时候,要注意分好几中情况:

  1、 若删除的元素在叶子节点上,并且节点内不止有一个元素,那么我们可以直接删除。

  2、 若叶子节点中只有待删除元素一个,则删除后会出现不平衡现象,我们优先从其左右兄弟中借元素。若可以借,我们需要将兄弟节点和双亲节点中的关键字同时旋转。即兄弟节点中的关键字提到双亲结点中,双亲结点中的关键字下到改节点内。

   3、若兄弟节点没有可以借的元素,此时应该采用合并的方法。即将双亲中一关键字与被删除节点的一兄弟节点合并。若合并后导致父节点不平衡,则需要对父节点进行平衡处理。不过此时应注意旋转时将某些节点更换父节点。

 4、  若删除的元素不是叶子节点中的元素,则需要寻找其左边序列中最大的元素来代替待删除元素,并且将代替之后的树进行平衡调整,方法与以上例子相同。

相关文章

  • 数据结构之BBST

    目录: 1.B-树与B+树2.红黑树 文章参考: 关于B-tree的科普文,很有趣什么是B-树? 关于B+树的科普...

  • HBASE-LSM树

    HBASE-LSM树 1.B+树 关于B树、B+树、B树的了解参考:* http://blog.csdn.net/...

  • 关于B树

    感觉B树的知识点有点繁琐,经过一天的复习,我总结了一下B树比较重要的几个点。(错误的望指正) (1)首先B树是一颗...

  • 树-二叉搜索树-平衡二叉树-红黑树-B树B+树

    关于树的总结从二叉树->二叉搜索树->平衡二叉树->红黑树->B树与B+树 B+树介绍 B树、B-树、B+树、B*...

  • [查找]AVL树,红黑树,B树,B+树以及索引相关

    关于应用,知乎上有问题是讨论这个的: AVL树,红黑树,B树,B+树,Trie树都分别应用在哪些现实场景中? 关于...

  • MySql中InnoDB表为什么要建议用自增列做主键

    InnoDB引擎表的特点 1、InnoDB引擎表是基于B+树的索引组织表(IOT) 关于B+树 B+ 树的特点: ...

  • B树、B-树、B+树、B*树

    B 树 通常我们所说的 B树 或 B-树,其实指的是一种树,这里我将其称为 B树。 一颗 M 阶的 B树具有以下特...

  • B树、B-树、B+树、B*树

    B 树 通常我们所说的 B树 或 B-树,其实指的是一种树,这里我将其称为 B树。一颗 M 阶的 B树具有以下特点...

  • B树(B-树)、B+树、B*树

    一、B树(B-树) 参考文章B tree: 二叉树(Binary tree),每个节点只能存储一个数。B-tre...

  • B树、B+树、B*树

    B-树,就是B树,B树的原英文名是B-tree,所以很多翻译为B-树,就会很多人误以为B-树是一种树、B树是另外一...

网友评论

      本文标题:关于B树

      本文链接:https://www.haomeiwen.com/subject/qyrwoqtx.html