class Solution {
public:
bool IsBanlanced(TreeNode* pRoot,int* pDepth){
if(pRoot==NULL){
*pDepth=0;
return true;
}
int nleft,nright;
if(IsBanlanced(pRoot->left,&nleft) &&
IsBanlanced(pRoot->right,&nright)){
int diff=nleft-nright;
if(diff<=1 && diff>=-1){
*pDepth=1+(nleft>nright?nleft:nright);
return true;
}
}
return false;
}
bool IsBalanced_Solution(TreeNode* pRoot) {
int depth=0;
return IsBanlanced(pRoot,&depth);
}
};
输入一颗二叉树,判断该二叉树是否是平衡二叉树
最新推荐文章于 2021-12-29 21:41:16 发布