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;
    }
}
相关推荐
wuminyu14 小时前
专家视角看Java字节码加载与存储指令机制
java·linux·c语言·jvm·c++
MediaTea15 小时前
AI 术语通俗词典:C4.5 算法
人工智能·算法
Navigator_Z15 小时前
LeetCode //C - 1033. Moving Stones Until Consecutive
c语言·算法·leetcode
WBluuue15 小时前
数据结构与算法:莫队(一):普通莫队与带修莫队
c++·算法
callJJ15 小时前
Spring Data Redis 两种编程模型详解:同步 vs 响应式
java·spring boot·redis·python·spring
风筝在晴天搁浅16 小时前
n个六面的骰子,扔一次之后和为k的概率是多少?
算法
wbs_scy16 小时前
Linux线程同步与互斥(三):线程同步深度解析之POSIX 信号量与环形队列生产者消费者模型,从原理到源码彻底吃透
java·开发语言
MATLAB代码顾问17 小时前
Python实现蜂群算法优化TSP问题
开发语言·python·算法
代码飞天17 小时前
机器学习算法和函数整理——助力快速查阅
人工智能·算法·机器学习
jiushiapwojdap17 小时前
LU分解法求解线性方程组Matlab实现
数据结构·其他·算法·matlab