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 diffe
class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } } public class Solution { public boolean isBalanced(TreeNode root) { if(root==null)return true; int left=treeDepth(root.left); int right=treeDepth(root.right); if(Math.abs(left-right)<=1){//条件 if(isBalanced(root.left)&&isBalanced(root.right))//递归调用isBanlianced(root); return true; } return false; } private int treeDepth(TreeNode root) {//求树的深度 // TODO Auto-generated method stub if(root==null)return 0; return Math.max(treeDepth(root.right), treeDepth(root.left))+1; } }