剑指offer(四十七)之平衡二叉树

Posted 奔跑着的国风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer(四十七)之平衡二叉树相关的知识,希望对你有一定的参考价值。

题目描述

输入一棵二叉树,判断该二叉树是否是平衡二叉树。

代码:

public class Solution {
   public boolean IsBalanced_Solution(TreeNode root) {
        if (root == null)
            return true;
 
        if (Math.abs(getHeight(root.left) - getHeight(root.right)) > 1)
            return false;
 
         
        return IsBalanced_Solution(root.left) && IsBalanced_Solution(root.right);
 
    }
 
    public int getHeight(TreeNode root) {
        if (root == null)
            return 0;
        return max(getHeight(root.left), getHeight(root.right)) + 1;
    }
 
    private int max(int a, int b) {
        return (a > b) ? a : b;
    }
}


以上是关于剑指offer(四十七)之平衡二叉树的主要内容,如果未能解决你的问题,请参考以下文章

《剑指offer》:[39-1]判断是否为平衡二叉树

Java 剑指offer(55-2) 平衡二叉树

剑指Offer平衡二叉树(树)

java剑指offer55.平衡二叉树

剑指offer(五十七)之二叉树的下一个结点

剑指offer(四十九)之二叉树中和为某一值的路径