【每日OJ —— 110. 平衡二叉树】

每日OJ ------ 110. 平衡二叉树

1.题目:110. 平衡二叉树

2.解法

2.1.算法讲解

1.这道题中的平衡二叉树的定义是:二叉树的每个节点的左右子树的高度差的绝对值不超过 111,则二叉树是平衡二叉树。根据定义,一棵二叉树是平衡二叉树,当且仅当其所有子树也都是平衡二叉树,因此可以使用递归的方式判断二叉树是不是平衡二叉树,递归的顺序可以是自顶向下或者自底向上。
2.算法:自顶向下递归
定义函数 height用于计算二叉树中的任意一个节点 p 的高度:


有了计算节点高度的函数,即可判断二叉树是否平衡。具体做法类似于二叉树的前序遍历,即对于当前遍历到的节点,首先计算左右子树的高度,如果左右子树的高度差是否不超过 1,再分别递归地遍历左右子节点,并判断左子树和右子树是否平衡。这是一个自顶向下的递归的过程。

2.2.代码实现

2.3.提交通过展示

相关推荐
稚南城才子,乌衣巷风流8 小时前
动态开点:原理、实现与应用场景
数据结构·算法
yyds_yyd_100868 小时前
1464. 数组中两元素的最大乘积(2026.07.27)
数据结构·c++·算法·leetcode
KaMeidebaby9 小时前
卡梅德生物技术快报 | 核酸适配体文库测序:核酸适配体文库测序的技术原理、实验流程与数据解析
前端·网络·数据库·人工智能·算法
geovindu9 小时前
CSharp: Breadth First Search Algorithm and Depth First Search Algorithm
开发语言·后端·算法·c#·.net·搜索算法
ekkoalex11 小时前
训练框架以及算法实现的框架
算法
躺柒11 小时前
读半导体简史08大型机
linux·服务器·c语言·数据库·unix·ibm
DFT计算杂谈11 小时前
交错磁研究进展材料物性与交叉应用
数据库·人工智能·python·opencv·算法
十月的皮皮11 小时前
STM32从零到量产开发:四路继电器工业控制模块开发— 继电器模块bsp_di.h与 bsp_di.c文件
c语言·stm32·stm32cubemx·hal库
玖玥拾11 小时前
LeetCode 26 删除有序数组中的重复项
算法·leetcode
Kina_C11 小时前
LVS负载均衡的十二种核心调度算法
linux·运维·算法·负载均衡·lvs