二叉平衡树和红黑树的区别,红黑树为什么是平衡二叉树

首页 > 经验 > 作者:YD1662022-11-14 14:15:53

二叉搜索树:也称二叉查找树,或二叉排序树。定义也比较简单,要么是一颗空

树,要么就是具有如下性质的二叉树:

(1)若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值;

(2)若任意节点的右子树不空,则右子树上所有结点的值均大于它的根结点的值;

(3)任意节点的左、右子树也分别为二叉查找树;

(4)没有键值相等的节点。

强平衡二叉树(AVL 树):在二叉搜索树的基础上多了两个重要的特点

(1)左右两子树的高度差的绝对值不能超过 1;

(2)左右两子树也是一颗平衡二叉树。

弱平衡二叉树(红黑树):红黑树是在普通二叉树上,对每个节点添加一个颜色属性形成的,需要同时满足一下五条性质

(1)节点是红色或者是黑色;

(2)根节点是黑色;

(3)每个叶节点(NIL 或空节点)是黑色;

(4)每个红色节点的两个子节点都是黑色的(也就是说不存在两个连续的红色节点);

(5)从任一节点到其没个叶节点的所有路径都包含相同数目的黑色节点。

区别:AVL 树需要保持平衡,但它的旋转太耗时,而红黑树就是一个没有 AVL 树那样平衡,因此插入、删除效率会高于 AVL 树,而 AVL 树的查找效率显然高于红黑树。

参考文章 1:https://blog.csdn.net/qq_25940921/article/details/82183093

参考文章 2:https://blog.csdn.net/yang_yulei/article/details/26066409

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.