class Solution {
public:
int maxpath(TreeNode *root,int &maxlocal)
{
if(root==NULL)
return 0;
int local=root->val;
int left=maxpath(root->left,maxlocal);
int right=maxpath(root->right,maxlocal);
if(left>0)
local=local+left;
if(right>0)
local=local+right;
maxlocal=max(local,maxlocal);
return max(max(left,right),0)+root->val;
}
int maxPathSum(TreeNode *root) {
if(root==NULL)
return 0;
int maxlocal=root->val;
maxpath(root,maxlocal);
return maxlocal;
}
};
没想到写博客能赚积分,那就多写点。。这题不会,http://blog.csdn.net/sunbaigui/article/details/8980697,估计下次再让我写我还是不会,先留着
Binary Tree Maximum Path Sum
最新推荐文章于 2024-03-25 21:39:45 发布