输入一棵二叉树,判断该二叉树是否是平衡二叉树。
public class Test39 {
public boolean IsBalanced_Solution(TreeNode root) {
return getDepth(root)!=-1;
}
public int getDepth(TreeNode root){
if(root==null){
return 0;
}
int leftDepth=getDepth(root.left);
int rightDepth=getDepth(root.right);
while(leftDepth!=-1&&rightDepth!=-1){
return Math.abs(leftDepth-rightDepth)>1?-1:Math.max(leftDepth,rightDepth)+1;
}
return -1;
}
}