【发布时间】:2015-12-16 04:58:22
【问题描述】:
https://leetcode.com/problems/balanced-binary-tree/
给定一棵二叉树,判断它是否高度平衡。
对于这个问题,高度平衡的二叉树定义为二叉树 树,其中每个节点的两个子树的深度永远不会不同 超过 1。
public class Solution {
public boolean isBalanced(TreeNode root) {
int ret = getLevel(root);
if(ret < 0)
return false;
return true;
}
public int getLevel(TreeNode node) {
if(node == null)
return 0;
int l = getLevel(node.left);
int r = getLevel(node.right);
if(Math.abs(l - r) > 1)
return -99;
return Math.max(l + 1, r + 1);
}
}
此代码已被接受。 但是,如果我将 -99 替换为 Integer.MIN_VALUE,我的代码将失败。什么错误?
例如
输入:[1,2,null,3,null,4,null,5]
输出:真
预期:错误
【问题讨论】: