题目:
给定一个二叉树,判断它是否是二叉树
力扣 110.平衡二叉树
题解:
class Solution {//递归法
public:
int getDepth(TreeNode* node) {
if (node == NULL) return 0;
int leftDepth = getDepth(node->left);
if (leftDepth == -1) return -1;
int rightDepth = getDepth(node->right);
if (rightDepth == -1) return -1;
return abs(leftDepth - rightDepth) > 1 ? -1 : 1 + max(leftDepth, rightDepth);
}
bool isBalance(TreeNode* root) {
return getDepth(root) == -1 ? false : true;
}
};