leetcode和算法----日更

leetcode 275 二叉树所有的路径

2020-01-26  本文已影响0人  Arsenal4ever

我觉得我手生了。先开全局变量,然后递归找叶子节点,维护路径,如果是叶子节点就把路径添加到全局变量中。

# 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 binaryTreePaths(self, root):
        """
        :type root: TreeNode
        :rtype: List[str]
        """
        if not root:
            return []
        self.result = []
        self.binaryPath(root, "")
        return self.result

    def binaryPath(self, root, path):
        if not root.left and not root.right:
            path += str(root.val)
            self.result.append(path)
        if root.left:
            path1 = path + str(root.val) + str("->")
            self.binaryPath(root.left, path1)
        if root.right:
            path2 = path + str(root.val) + str("->")
            self.binaryPath(root.right, path2)
上一篇 下一篇

猜你喜欢

热点阅读