AVL树的学习

平衡因子

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

旋转操作

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

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

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

冲突的右孩变左孩

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

LL型

失衡节点:平衡因子 = 2

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

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

RR型

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

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

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

LR型

失衡节点:平衡因子 = 2

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

左旋左孩子,然后右旋

RL型

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

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

右旋右孩子,然后左旋

平衡二叉树插入

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

相关推荐
执风挽^10 分钟前
Python基础编程题2
开发语言·python·算法·visual studio code
●VON19 分钟前
CANN推理引擎:从云端到边缘的极致加速与部署实战
学习·react native
Z9fish19 分钟前
sse哈工大C语言编程练习20
c语言·开发语言·算法
笔画人生23 分钟前
深度解析 CANN 项目:以 `ops-transformer` 为例探索高性能 AI 算子库
学习·开源
晓131325 分钟前
第六章 【C语言篇:结构体&位运算】 结构体、位运算全面解析
c语言·算法
iAkuya31 分钟前
(leetcode)力扣100 61分割回文串(回溯,动归)
算法·leetcode·职场和发展
梵刹古音34 分钟前
【C语言】 指针与数据结构操作
c语言·数据结构·算法
VT.馒头39 分钟前
【力扣】2695. 包装数组
前端·javascript·算法·leetcode·职场和发展·typescript
AI视觉网奇1 小时前
3d数字人 ue blender 绑定衣服对齐 2026
学习·ue5
Nan_Shu_6141 小时前
学习: Blender 基础篇
学习·blender