1 public class Solution { 2 public boolean isBalanced(TreeNode root) { 3 if(root ==null) return true; 4 if(is(root)==-1) return false; 5 else return true; 6 } 7 public int is(TreeNode root){ 8 if(root==null) return 0; 9 int left = is(root.left); 10 if(left==-1) return -1; 11 int right = is(root.right); 12 if(right==-1) return -1; 13 if(Math.abs(left-right)>1) return -1; 14 return left>right?left+1:right+1; 15 } 16 }
原文:http://www.cnblogs.com/krunning/p/3538821.html