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;
    }
}
相关推荐
Java面试题总结1 分钟前
Spring AI 初步集成(2)-添加记忆
java·人工智能·spring
野犬寒鸦1 分钟前
JVM垃圾回收机制深度解析(G1篇)(垃圾回收过程及专业名词详解)
java·服务器·jvm·后端·面试
清水白石0082 分钟前
协程不是线程:深入理解 Python async/await 运行机制
java·linux·python
程序员老乔2 分钟前
Java 新纪元 — JDK 25 + Spring Boot 4 全栈实战(五):FFM API,告别JNI在Spring Boot中直连推荐引擎
java·开发语言·spring boot
va学弟2 分钟前
Java 网络通信编程(7):完善视频通信
java·服务器·网络
光影少年3 分钟前
react的diff算法和vue的diff算法区别
vue.js·算法·react.js
后青春期的诗go4 分钟前
泛微OA-E9与第三方系统集成开发企业级实战记录(九)
java·金蝶·erp·泛微·oa·集成开发·e9
Queenie_Charlie6 分钟前
二分匹配
c++·算法·二分匹配
历程里程碑6 分钟前
链表--排序链表
大数据·数据结构·算法·elasticsearch·链表·搜索引擎·排序算法
IT猿手8 分钟前
基于动态三维环境下的Q-Learning算法无人机自主避障路径规划研究,MATLAB代码
算法·matlab·无人机·动态路径规划·多无人机动态避障路径规划