AVL树(附Java 代码、详细注释、前端打印功能)

AVL树(附Java 代码、详细注释、前端打印功能)

树、深度、高度

参考百度百科的对树和平衡树的定义:

平衡树

平衡因子

左子树高度减去右子树高度的差值称为该树的平衡因子

左旋

在这里插入图片描述
记忆口诀:右边的儿子变爸爸,右子的左子变右子

右旋

在这里插入图片描述
记忆口诀:左边的儿子变爸爸,左子的右子变左子

增加、删除节点

增加删除节点会导致树节点的不平衡,需要重新计算高度和平衡因子并根据平衡因子进行旋转来重新平衡,以下是Java代码完整实现,并且还有打印器代码。

代码

前方高能,代码里包含大量注释内容、图型以及推导过程,觉得还OK的兄弟麻烦伸出你发财手点个赞啊!

Gitee : tree-printer
其中代码 tree-printer-web 是一个前端页面,可以方便测试增删查,大概就长下面这个样子
在这里插入图片描述

Talk is cheap, show me your code.

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值