Java for LeetCode 110 Balanced Binary Tree

Given a binary tree, determine if it is height-balanced.

For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1.

解题思路:

递归即可,JAVA实现如下:

    public boolean isBalanced(TreeNode root) {
        if(root==null)
        	return true;
        if(Math.abs(maxDepth(root.left)-maxDepth(root.right))>1)
        	return false;
        return isBalanced(root.left)&&isBalanced(root.right);
    }
   static public int maxDepth(TreeNode root) {
        if(root==null)
            return 0;
        return Math.max(maxDepth(root.left), maxDepth(root.right))+1;
    }

 

posted @ 2015-05-23 19:48  TonyLuis  阅读(743)  评论(0编辑  收藏  举报