关于java:JZ039平衡二叉树

均衡二叉树

题目形容

输出一棵二叉树,判断该二叉树是否是均衡二叉树。

  • 在这里,咱们只须要思考其平衡性,不须要思考其是不是排序二叉树

题目链接: 均衡二叉树

代码

/**
 * 题目:均衡二叉树
 * 题目形容
 * 输出一棵二叉树,判断该二叉树是否是均衡二叉树。
 * 在这里,咱们只须要思考其平衡性,不须要思考其是不是排序二叉树
 * 题目链接:
 * https://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222?tpId=13&&tqId=11192&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
 */
public class Jz39 {

    private boolean isBalanced = true;

    public boolean isBalanced_Solution(TreeNode root) {
        height(root);
        return isBalanced;
    }

    /**
     * 递归
     *
     * @param root
     * @return
     */
    private int height(TreeNode root) {
        if (root == null || !isBalanced) {
            return 0;
        }
        int left = height(root.left);
        int right = height(root.right);
        if (Math.abs(left - right) > 1) {
            isBalanced = false;
        }
        return 1 + Math.max(left, right);
    }

    public static void main(String[] args) {

    }
}

【每日寄语】 做个心田阳光的人。不难过,不心急。刚强、向上,凑近阳光。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理