class Solution {
public:
bool IsBalanced_Solution(TreeNode* pRoot) {
if(!pRoot) return true;
dfs(pRoot);
return res;
}
int dfs(TreeNode* root){
if(res==false) return 0;
if(!root) return 0;
int L=dfs(root->left);
int R=dfs(root->right);
//平衡二叉树定义:一个节点的左右子树的高度之差<=1
if(abs(L-R)>1) res=false;
return max(L,R)+1;
}
private:
bool res=true;
};
NC62 判断是不是平衡二叉树(C++)- 简单、树、dfs
最新推荐文章于 2024-08-05 20:49:33 发布