首页 > 其他 > 详细

124. Binary Tree Maximum Path Sum

时间:2019-03-13 18:30:34      阅读:123      评论:0      收藏:0      [点我收藏+]

https://www.cnblogs.com/grandyang/p/4280120.html

分清楚一个东西,你如果需要左子树或者右子树加入路径,不会让两个一起,只会让一个,只有真正是最大的那个才会同时使用左右子树

class Solution {
public:
    int maxPathSum(TreeNode* root) {
        int res = INT_MIN;
        maxpath(root,res);
        return res;
    }
    int maxpath(TreeNode* root,int &res){
        if(root == NULL)
            return 0;
        int left = max(0,maxpath(root->left,res));
        int right = max(0,maxpath(root->right,res));
        res = max(res,left + right + root->val);
        return max(left,right) + root->val;
    }
};

 

124. Binary Tree Maximum Path Sum

原文:https://www.cnblogs.com/ymjyqsx/p/10524898.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!