题解 | #平衡二叉树#

平衡二叉树

http://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222

比较每一个节点的左右差值,如果差值小于等于1就递归判断其左右节点是否满足。

public class Solution {
    
    
    public boolean IsBalanced_Solution(TreeNode root) {
        if(null==root)
            return true;
        if(1>=Math.abs(getMaxLen(root.left ,0)-getMaxLen(root.right,0)))
            return (IsBalanced_Solution(root.left) && IsBalanced_Solution(root.right));
        else
           return false;
    }
    
    
    public int getMaxLen(TreeNode root,int n) {
        if(null==root)
            return n;
        return Math.max(getMaxLen(root.left,n+1),getMaxLen(root.right,n+1));
    }
}
全部评论

相关推荐

那一天的Java_J...:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
06-17 00:26
门头沟学院 Java
程序员小白条:建议换下项目,智能 AI 旅游推荐平台:https://github.com/luoye6/vue3_tourism_frontend 智能 AI 校园二手交易平台:https://github.com/luoye6/vue3_trade_frontend GPT 智能图书馆:https://github.com/luoye6/Vue_BookManageSystem 选项目要选自己能掌握的,然后最好能自己拓展的,分布式这种尽量别去写,不然你只能背八股文了,另外实习的话要多投,尤其是学历不利的情况下,多找几段实习,最好公司title大一点的
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务