二叉树与二叉平衡树

二叉树的节点最大键数量为2,平衡二叉树的最大键数量为3(暂时的),当平衡二叉树的键到达3时,会进行裂变,会向上一级生长。当父级节点也有三个键的时候,接着向上裂变

 

优点


2-3树在最坏情况下仍有较好的性能。每个操作中处理每个结点的时间都不会超过一个很小的常数,且这两个操作都只会访问一条路径上的结点,所以任何查找或者插入的成本都肯定不会超过对数级别。

完美平衡的2-3树要平展的多。例如,含有10亿个结点的一颗2-3树的高度仅在19到30之间。我们最多只需要访问30个结点就能在10亿个键中进行任意查找和插入操作。

 

缺点


我们需要维护两种不同类型的结点,查找和插入操作的实现需要大量的代码,而且它们所产生的额外开销可能会使算法比标准的二叉查找树更慢。

平衡一棵树的初衷是为了消除最坏情况,但我们希望这种保障所需的代码能够越少越好。

 

posted @ 2021-12-24 18:15  wlp贼丑  阅读(41)  评论(0编辑  收藏  举报