题解 | #平衡二叉树#

平衡二叉树

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

  1. 结合求二叉树深度的思路继续做。关键注意中间的判断就可以。
  2. 习惯把那种结果设置成全局变量最后在递归里改就好。
class Solution {
public:

    bool res = true;

    bool IsBalanced_Solution(TreeNode* pRoot) {
        if (!pRoot) return true;
        dfs(pRoot);

        return res;
    }

    int dfs(TreeNode* pRoot){
        if(!pRoot) return 0;

        int l = dfs(pRoot->left);
        int r = dfs(pRoot->right);
        if(abs(l-r)>1){
            res = false;
        }

        return max(l,r) +1;//返回要加自己。
    }
};
算法解析 文章被收录于专栏

这里主要是算法岗的自我思路总结

全部评论

相关推荐

10-30 23:23
已编辑
中山大学 Web前端
去B座二楼砸水泥地:这无论是个人素质还是专业素质都👇拉满了吧
点赞 评论 收藏
分享
尊尼获获:闺蜜在哪?
点赞 评论 收藏
分享
希望各位大哥分享一下自己的看法,对于机器人行业确实不太了解
绝顶但不聪明:如果是机器人相关岗位,优先优必选(专门***器人的),其他岗位选小米
投递小米集团等公司10个岗位 > 牛客解忧铺 牛客在线求职答疑中心
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务