cc150 4.1

check if a tree is balanced


public int getHeight (TreeNode root) {

  if (root == null) return 0;
  return Math.max(getHeight (root.left), getHeight(root.right)) + 1;
}




public boolean checkBalance(TreeNode root) {
  if (root == null) return true;
  int left = getHeight(root.left);
  int right = getHeight(root.right);
  int diff = Math.abs(left - right);
  
  if (diff > 1){
    return false;
  } else {
    return checkBalance(root.right)&&checkBalance(root.left);
  }


}