Binary Tree Maximum Path Sum
2013-09-02 06:41
218 查看
public int maxPathSum(TreeNode root) { // Start typing your Java solution below // DO NOT write main() function ArrayList<Integer> result = new ArrayList<Integer>(1); result.add(Integer.MIN_VALUE); maxPathSum(root, result); return result.get(0); } public int maxPathSum(TreeNode root, ArrayList<Integer> result) { if(root == null) return 0; int left = maxPathSum(root.left, result); int right = maxPathSum(root.right, result); int max = root.val; if(left > 0) max += left; if(right > 0) max += right; if(result.get(0) < max) result.set(0, max); return Math.max(root.val, Math.max(left, right) + root.val); }
相关文章推荐
- [Leetcode]Binary Tree Maximum Path Sum
- Binary Tree Maximum Path Sum
- leetcode Binary Tree Maximum Path Sum
- Leetcode: Binary Tree Maximum Path Sum
- LeetCode | Binary Tree Maximum Path Sum
- 树的最大路径和 Binary Tree Maximum Path Sum
- leetcode-124:Binary Tree Maximum Path Sum(Java)
- [leetcode刷题系列]Binary Tree Maximum Path Sum
- *[Lintcode]Binary Tree Maximum Path Sum
- Binary Tree Maximum Path Sum
- LeetCode124—Binary Tree Maximum Path Sum
- [leetcode]Binary Tree Maximum Path Sum
- LeetCode 124:Binary Tree Maximum Path Sum
- Lintcode94 Binary Tree Maximum Path Sum solution 题解
- binary-tree-maximum-path-sum
- Binary Tree Maximum Path Sum -- LeetCode
- LeetCode-Binary Tree Maximum Path Sum
- JavaShowAlgorithm-Binary Tree Maximum Path Sum 二叉树最大路径和
- LeetCode--Binary Tree Maximum Path Sum
- LeetCode-Binary Tree Maximum Path Sum-二叉树最大路径和-DFS