Leetcode——113. 路徑總和 II
給定一個二叉樹和一個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。
說明: 葉子節點是指沒有子節點的節點。
示例:
給定如下二叉樹,以及目標和 sum = 22,
5
/ \
4 8
/ / \
11 13 4
/ \ / \
7 2 5 1
返回:
[
[5,4,11,2],
[5,8,4,5]
]
class Solution:
def pathSum(self, root, sum):
"""
:type root: TreeNode
:type sum: int
:rtype: List[List[int]]
"""
result = list()
if root == None:
return result
if not root.left and not root.right and sum == root.val:
result.append([root.val])
return result
left = self.pathSum(root.left, sum - root.val)
for i in left:
i.insert(0, root.val)
result.append(i)
right = self.pathSum(root.right, sum - root.val)
for i in right:
i.insert(0, root.val)
result.append(i)
return result
用這種方法會報錯int沒有insert,問了大佬後發現第一個left之所以可以insert是因為是treenode型別的,後面是int數值型別的,不可能會有insert,所以不適合用這種解法
def pathSum(self,root,sum):
self.auxPathSum(root, sum, [], res)
return res
def auxPathSum(self,root,sum,cur_list,cur_lists):
if not sum:
return
if sum == 0 and not root.left and not root.right:
cur_lists.append(cur_list + [root.val])
return
if root.left:
self.auxPathSum(root.left, sum, cur_list + [root.val], cur_lists)
if root.right:
self.auxPathSum(root.right,sum,cur_list + [root.val],cur_lists)
相關文章
- LeetCode - 113 - 路徑總和 IILeetCode
- LeetCode-113-路徑總和 IILeetCode
- Day18 | 513. 找樹左下角的值 | 112.路徑總和、113.路徑總和ii
- 程式碼隨想錄演算法訓練營第十八天| 513. 找樹左下角的值 112. 路徑總和 113. 路徑總和 II演算法
- LeetCode - 112 - 路徑總和LeetCode
- Leetcode——112. 路徑總和LeetCode
- Leetcode——437. 路徑總和 IIILeetCode
- 每日一道演算法題--leetcode 113--路徑總和II--python演算法LeetCodePython
- leetcode:組合總和II(回溯java)LeetCodeJava
- LeetCode-040-組合總和 IILeetCode
- LeetCode40.組合總和IILeetCode
- LeetCode每日一題: 路徑總和(No.112)LeetCode每日一題
- 【LeetCode擊敗99%+】二叉樹路徑總和LeetCode二叉樹
- LeetCode-063-不同路徑IILeetCode
- 二叉樹路徑總和二叉樹
- [Leetcode]931.下降路徑最小和LeetCode
- 寫不出來的深度優先搜尋----leetcode113 路徑總和LeetCode
- dede路徑總結
- 每日一道演算法題--leetcode 112--路徑總和--python演算法LeetCodePython
- LeetCode 39. 組合總和 40.組合總和II 131.分割回文串LeetCode
- PHP中require和include路徑問題總結PHPUI
- 路徑中./和../和/
- 檔案路徑總結
- 日誌路徑彙總
- 檔案絕對路徑和相對路徑
- Jsp相對路徑和絕對路徑JS
- html中的路徑的介紹:絕對路徑和相對路徑HTML
- Linux檔案的路徑定位-相對路徑和絕對路徑Linux
- [LeetCode] Jump Game IILeetCodeGAM
- Leetcode jump Game IILeetCodeGAM
- Leetcode Spiral Matrix IILeetCode
- Leetcode Path Sum IILeetCode
- Leetcode-Subsets IILeetCode
- Leetcode-Permutations IILeetCode
- Leetcode Unique Paths IILeetCode
- Permutations II leetcode javaLeetCodeJava
- Subset II leetcode javaLeetCodeJava
- nodejs路徑處理方法和絕對路徑NodeJS