給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明: 葉子節點是指沒有子節點的節點。
示例:給定如下二叉樹,以及目標和 sum = 22,
# definition for a binary tree node.
# class treenode(object):
# def __init__(self, x):
# self.val = x
# self.left = none
# self.right = none
class solution(object):
def pathsum(self, root, sum1):
""":type root: treenode
:type sum: int
:rtype: list[list[int]]
"""if not root:
return
stack = [([root.val],root)]
res =
while stack:
tmp,node = stack.pop()
if not node.right and not node.left and sum(tmp)==sum1:
if node.right:
if node.left:
return res
# definition for a binary tree node.
# class treenode(object):
# def __init__(self, x):
# self.val = x
# self.left = none
# self.right = none
class solution(object):
def pathsum(self, root, sum):
""":type root: treenode
:type sum: int
:rtype: list[list[int]]
"""if not root:
return
def f(root,sum,res):
if not root:
return
if not root.left and not root.right and root.val == sum:
return [res+[root.val]]
return f(root.left,sum-root.val,res+[root.val])+f(root.right,sum-root.val,res+[root.val])
return f(root,sum,)
113 路徑總和 II
給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和 sum 22,4 8 11 13 4 7 2 5 1 返回 5,4,11,2 5,8,4,5 definition for a binary tr...
113 路徑總和 II
113.路徑總和 ii 給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。vector pathsum treenode root,int sum void dfs treenode root,int sum,vector ans,vector one ans on...
113 路徑總和 II
給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和 sum 22,5 4 8 11 13 4 7 2 5 1 返回 5,4,11,2 5,8,4,5 確定遞迴函式返回值以及函式引數 由於要遍歷整一棵...