public class Solution {
private static boolean flag = true;
public boolean isBalanced(TreeNode root) {
if (root == null)
return true;
flag = true;
height(root);
return flag;
}
public int height (TreeNode root) {
if (root == null)
return 0;
int left = 0, right = 0;
left = height(root.left);
right = height(root.right);
if (Math.abs(left - right) > 1)
flag = false;
return left > right ? (left + 1): (right + 1);
}
}
本来想设置flag作为本地变量的,这样的话就不用每次进行一次之前进行初始化了。但是Boolean不能进行传递。
判断一个树是不是平衡二叉树
