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;
    }
}
相关推荐
爱吃苹果的日记本5 小时前
数据结构第五课
数据结构·学习
莫陌尛.5 小时前
etcd与Nacos功能及场景对比文档
java
麻瓜code5 小时前
【JUC】并发容器:从线程不安全到阻塞队列
java
Logic1016 小时前
C语言/数据结构贪心算法题解:买卖股票的最佳时机——一次交易最大利润(O(n)时间O(1)空间)
c语言·数据结构·贪心算法·数组·时间复杂度·算法题·股票交易
许彰午6 小时前
50-18个表单控件
java·低代码·架构
Logic1016 小时前
C语言/数据结构位运算题解:异或XOR找出货币交易中的“独特面值“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
白宇横流学长6 小时前
基于springboot的个人博客系统的设计与实现【源码+文档】
java·spring boot
ctlover6 小时前
数据结构:树
数据结构·python
GreenTea7 小时前
发布 3 天登顶 HN:不生成一个字的模型 Jev,我把它的源码和黑料都扒了一遍
前端·后端·算法
白远山7 小时前
本地游戏代练源码开发实战:架构设计与核心功能实现指南
java·开发语言·架构·需求分析