LCR 176. 判断是否为平衡二叉树

解题思路:

java 复制代码
class Solution {
    public boolean isBalanced(TreeNode root) {
        return recur(root) != -1;
    }

    private int recur(TreeNode root) {
        if (root == null) return 0;
        int left = recur(root.left);
        if(left == -1) return -1;
        int right = recur(root.right);
        if(right == -1) return -1;
        return Math.abs(left - right) < 2 ? Math.max(left, right) + 1 : -1;
    }
}
相关推荐
woai33644 小时前
项目-轻客管家1-环境准备
java
玛卡巴卡ldf4 小时前
【LeetCode 手撕算法】(二分查找)搜索插入位置、搜索二维矩阵、查找数组相同的所有位置、搜索旋转排序数组、旋转升序数组的最小值
数据结构·算法·leetcode
xqqxqxxq11 小时前
Java AI智能P图工具技术笔记
java·人工智能·笔记
谷雨不太卷11 小时前
进程的状态码
java·前端·算法
顾温11 小时前
default——C#/C++
java·c++·c#
空中海11 小时前
02 ArkTS 语言与工程规范
java·前端·spring
楚国的小隐士12 小时前
在AI时代,如何从0接手一个项目?
java·ai·大模型·编程·ai编程·自闭症·自闭症谱系障碍·神经多样性
散峰而望12 小时前
【算法竞赛】C/C++ 的输入输出你真的玩会了吗?
c语言·开发语言·数据结构·c++·算法·github
躺不平的理查德12 小时前
时间复杂度与空间复杂度备忘录
数据结构·算法
yaki_ya12 小时前
yaki-C语言:从概念基础到内存解析---数组(array)完全指南
java·c语言·算法