判断是否为平衡二叉树

平衡树,即平衡二叉树(Balanced Binary Tree),具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。

public boolean IsBalanced_Solution(TreeNode root) {
        //若结点为空,是平衡二叉树
        if(root==null)
            return true;
        //若结点不为空,判断它的左右子树是否高度差绝对值小于等于1
        else{
            //若左右子树的高度差绝对值小于等于1,判断左右子树是不是平衡二叉树
            if(Math.abs(height(root.left)-height(root.right))<=1)
              return IsBalanced_Solution(root.left)&&IsBalanced_Solution(root.right);
            else
                return false;
        }
    }
    //求一个树的高度
    private int height(TreeNode root){
        if(root==null)
            return 0;
        else{
            int hL=height(root.left);
            int hR=height(root.right);
            return hL>hR?hL+1:hR+1;
        }
    }
全部评论

相关推荐

点赞 评论 收藏
分享
评论
4
4
分享

创作者周榜

更多
正在热议
更多
# 一张图晒出你司的标语 #
4280次浏览 75人参与
# AI面会问哪些问题? #
27798次浏览 553人参与
# 厦门银行科技岗值不值得投 #
8013次浏览 188人参与
# 你的实习产出是真实的还是包装的? #
20172次浏览 342人参与
# 找AI工作可以去哪些公司? #
9076次浏览 233人参与
# 春招至今,你的战绩如何? #
65065次浏览 580人参与
# 开放七大实习专项,百度暑期实习值得冲吗 #
15206次浏览 221人参与
# 从事AI岗需要掌握哪些技术栈? #
8906次浏览 304人参与
# 中国电信笔试 #
31999次浏览 292人参与
# 你做过最难的笔试是哪家公司 #
33451次浏览 231人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
340801次浏览 2174人参与
# 阿里笔试 #
178538次浏览 1315人参与
# 哪些公司真双非友好? #
69577次浏览 289人参与
# 机械人避雷的岗位/公司 #
62703次浏览 393人参与
# 第一份工作一定要去大厂吗 #
14567次浏览 122人参与
# 金三银四,你的春招进行到哪个阶段了? #
22075次浏览 280人参与
# 为了减少AI幻觉,你注入过哪些设定? #
26250次浏览 310人参与
# 沪漂/北漂你觉得哪个更苦? #
9830次浏览 193人参与
# 应届生第一份工资要多少合适 #
20682次浏览 86人参与
# HR最不可信的一句话是__ #
6219次浏览 114人参与
# AI时代,哪个岗位还有“活路” #
11505次浏览 342人参与
# 春招你拿到offer了吗 #
831200次浏览 9987人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务