Java数据结构05_AVL平衡树

二叉搜索树已经足够完美了吗?

  比如 插入1、2、3、4、5、6、7、8;形成的二叉搜索树如下:
在这里插入图片描述

性质

  平衡二叉树又被称为AVL树,它具有以下性质:它是一棵空树或它的左右子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树;
在这里插入图片描述

相关概念:
  • 平衡因子:左右子树高度差的绝对值;
  • 最低不平衡节点:用A表示最低不平衡节点,则A的祖先节点可能有不平衡的, 但是其所有后代节点都是平衡的;
  • 失去平衡的最小子树:距离插入节点最近且平衡因子绝对值大于1的节点 作为根的子树;
不平衡的四种情形

1、对A的左儿子的左子树进行一次插入 ,称为LL型
2、对A的左儿子的右子树进行一次插入,称为LR型
3、对A的右儿子的右子树进行一次插入,称为RR型
4、对A的右儿子的左子树进行一次插入,称为RL型
在这里插入图片描述

平衡调整的实现方法
  • 单旋:右旋(LL型)、左旋(RR型)
  • 双旋:左右旋(LR型)、右左旋(RL型)
右旋

在这里插入图片描述

左旋

在这里插入图片描述

左右旋

在这里插入图片描述

右左旋

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值