二叉树中和为某一值的所有结果

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def pathSum(self, root: TreeNode, sum: int) -> List[List[int]]:
        res = []
        path = []
        def find_path(root, target):
            if not root: return []
            path.append(root.val)
            target -= root.val
            if target == 0 and root.left is None and root.right is None:
                res.append(path[::])
            
            find_path(root.left, target)
            find_path(root.right, target)
            path.pop()
        find_path(root, sum)
        return res
posted @ 2021-03-08 09:58  KbMan  阅读(52)  评论(0编辑  收藏  举报