1. 程式人生 > 實用技巧 >124. 二叉樹中的最大路徑和

124. 二叉樹中的最大路徑和

給定一個非空二叉樹,返回其最大路徑和。

本題中,路徑被定義為一條從樹中任意節點出發,達到任意節點的序列。該路徑至少包含一個節點,且不一定經過根節點。

示例 1:

輸入: [1,2,3]

1
/ \
2 3

輸出: 6
示例2:

輸入: [-10,9,20,null,null,15,7]

-10
/ \
9 20
/ \
15 7

輸出: 42

來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/binary-tree-maximum-path-sum

遞迴水題

# Definition for a binary tree node.
#
class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: ans=float('-inf') def maxPathSum(self, root: TreeNode) -> int: def seek(node): if not node: return 0 l
=seek(node.left) r=seek(node.right) self.ans=max(self.ans,max(l,0)+max(r,0)+node.val) return max(l,r,0)+node.val seek(root) return self.ans