AVL树的学习

平衡因子

(左子树高度 - 右子树高度)的绝对值 <= 1

旋转操作

左旋:向左旋转,冲突的左孩变右孩

冲突的左孩变成了右孩,两个中序遍历是一致的,说明它俩是等价的。

右旋:向右旋转,重推的右孩变左孩

冲突的右孩变左孩

什么时候左旋,什么时候右旋

LL型

失衡节点:平衡因子 = 2

失衡节点左孩子:平衡因子 = 1

向右旋转,冲突的右孩变左孩

RR型

失衡节点:平衡因子 = -2

失衡节点左孩子:平衡因子 = -1

向右旋转,冲突的左孩变右孩

LR型

失衡节点:平衡因子 = 2

失衡节点左孩子:平衡因子 = -1

左旋左孩子,然后右旋

RL型

失衡节点:平衡因子 = -2

失衡节点左孩子:平衡因子 = 1

右旋右孩子,然后左旋

平衡二叉树插入

插入节点后如果导致多个祖先节点失衡,只需调整距离插入节点最近的失衡节点,其它失衡点会自然平衡

相关推荐
love在水一方21 分钟前
VLN 入门学习计划 —— 基于 InternNav
学习
_深海凉_2 小时前
LeetCode热题100-寻找两个正序数组的中位数
算法·leetcode·职场和发展
旖-旎3 小时前
深搜练习(电话号码字母组合)(3)
c++·算法·力扣·深度优先遍历
谭欣辰3 小时前
C++快速幂完整实战讲解
算法·决策树·机器学习
Mr_pyx3 小时前
【LeetHOT100】随机链表的复制——Java多解法详解
算法·深度优先
red_redemption3 小时前
自由学习记录(175)
学习
AIFarmer3 小时前
【无标题】
开发语言·c++·算法
AGV算法笔记3 小时前
CVPR 2025 最新感知算法解读:GaussianLSS 如何用 Gaussian Splatting 重构 BEV 表示?
算法·重构·自动驾驶·3d视觉·感知算法·多视角视觉
nashane4 小时前
HarmonyOS 6学习:画中画(PiP)状态同步与场景化实战指南
学习·pip·harmonyos·harmonyos 5
_李小白4 小时前
【android opencv学习笔记】Day 8: remap(像素位置重映射)
android·opencv·学习