您的位置:首页 > 其它

Leetcode Balanced Binary Tree

2015-05-18 17:08 323 查看
判断一个二叉树是否是高度平衡的。高度平衡的定义是:对每一个节点,其左儿子树与右儿子树的高度差小于等于1。8ms

int height(struct TreeNode* node) {
if (!node) return 0;
int l = height(node->left);
if (l == -1) return -1;
int r = height(node->right);
if (r == -1 || abs(l - r) > 1)
return -1;
return l > r ? l+1 : r+1;
}

bool isBalanced(struct TreeNode* root) {
return height(root) >= 0 ? true : false;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  LeetCode