LeetCode124. Binary Tree Maximum Path Sum

Posted Vincent丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode124. Binary Tree Maximum Path Sum相关的知识,希望对你有一定的参考价值。

Given a binary tree, find the maximum path sum.

For this problem, a path is defined as any sequence of nodes from some starting node to any node in the tree along the parent-child connections. The path must contain at least one node and does not need to go through the root.

For example:
Given the below binary tree,

       1
      /      2   3

 

Return 6.

题解:

  感觉解题思路有点类似于动态规划,一个变量用于表示以此节点为根的最大路径和,另一个变量为全局变量,全局更新最大值

 1 class Solution {
 2 public:
 3     int maxPathSum(TreeNode* root) {
 4         if (!root)
 5             return 0;
 6         int res = INT_MIN;
 7         helper(root, res);
 8         return res;
 9     }
10     
11     int helper(TreeNode* root, int& res) {
12         if (!root)
13             return 0;
14         
15         int lmax = max(helper(root->left, res), 0);
16         int rmax = max(helper(root->right, res), 0);
17         res = max(lmax + rmax + root->val, res);
18         return max(lmax, rmax) + root->val;
19     }
20 };

 


以上是关于LeetCode124. Binary Tree Maximum Path Sum的主要内容,如果未能解决你的问题,请参考以下文章

[LeetCode]*124.Binary Tree Maximum Path Sum

[leetcode-124-Binary Tree Maximum Path Sum]

leetcode -124. Binary Tree Maximum Path Sum

LeetCode124. Binary Tree Maximum Path Sum

leetcode--124. Binary Tree Maximum Path Sum

LeetCode124 Binary Tree Maximum Path Sum