题解 | #平衡二叉树#

平衡二叉树

http://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222

//利用DFS判断平衡二叉树
//左子树返回lef_dep,右子树返回right_dep,当前节点返回max(lef_dep,right_dep)+1深度
bool res=true;
class Solution {
public:
    int DFS(TreeNode* node)
    {
        if(node==NULL)
            return 0;
        int dep_lef=DFS(node->left);
        int dep_rig=DFS(node->right);
        if(abs(dep_lef-dep_rig)>1)
            res=false;
        return max(dep_lef,dep_rig)+1;
    }
    bool IsBalanced_Solution(TreeNode* pRoot) {
        DFS(pRoot);
        return res;
    }
};
全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务