首页 > 其他 > 详细

AVL树

时间:2020-05-27 22:29:31      阅读:37      评论:0      收藏:0      [点我收藏+]

平衡二叉搜索树

平衡二叉搜索树(Self-balancing binary search tree)又被称为AVL树(有别于AVL算法),且具有以下性质:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。

平衡因子

某结点的左子树与右子树的高度(深度)差即为该结点的平衡因子(BF,Balance Factor)。平衡二叉树上所有结点的平衡因子只可能是 -1,0 或 1。如果某一结点的平衡因子绝对值大于1则说明此树不是平衡二叉树。为了方便计算每一结点的平衡因子我们可以为每个节点赋予height这一属性,表示此节点的高度。

AVL树的添加

protected void afterAdd(Node<E> node) {
        while((node = node.parent)!=null){
            if(isBalanced(node)){
                updateHeight(node);
            }else{
                reblance(node);
                break;
            }
        }
    }

 

AVL树

原文:https://www.cnblogs.com/lzh66/p/12976784.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!