剑指offer39 平衡二叉树

剑指上用了指针传递,这里用的引用传递

class Solution {
public:
bool IsBalanced_Solution(TreeNode* pRoot) {
int depth = ;
return IsBalanced(pRoot,depth);
}
bool IsBalanced(TreeNode* pRoot,int& depth){
if(pRoot == NULL){
depth = ;
return true;
}
int left = ;
int right = ;
if(IsBalanced(pRoot->left,left) && IsBalanced(pRoot->right,right)){
int diff = left - right;
if(diff <= && diff >= -){
depth = + (left > right ? left : right);
return true;
}
}
return false;
}
};
上一篇:LIFO栈 ADT接口 数组实现


下一篇:I - Doing Homework again(贪心)