• 257. 二叉树的所有路径


    给定一个二叉树,返回所有从根节点到叶子节点的路径。

    说明: 叶子节点是指没有子节点的节点。

    示例:

    输入:

    1
    /
    2 3

    5

    输出: ["1->2->5", "1->3"]

    解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/binary-tree-paths

    # Definition for a binary tree node.
    # class TreeNode:
    #     def __init__(self, x):
    #         self.val = x
    #         self.left = None
    #         self.right = None
    
    class Solution:
        def binaryTreePaths(self, root: TreeNode) -> List[str]:
            if not root:
                return []
            children=[root.left,root.right]
            if not any(children):
                return ['1']
            
            def dfs(root,path):
                if root:
                    path+=str(root.val)
                    if not root.left and not root.right:
                        res.append(path)
                    else:
                        path+='->'
                        dfs(root.left,path)
                        dfs(root.right,path)
    
            res=[]
            dfs(root,'')  
                
            return res

    ``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````

    # Definition for a binary tree node.
    # class TreeNode:
    #     def __init__(self, x):
    #         self.val = x
    #         self.left = None
    #         self.right = None
    
    class Solution:
        def binaryTreePaths(self, root: TreeNode) -> List[str]:   
            def dfs(root,path):
                if root:
                    path+=str(root.val)
                    if not root.left and not root.right:
                        res.append(path)
                    else:
                        path+='->'
                        dfs(root.left,path)
                        dfs(root.right,path)
    
            res=[]
            dfs(root,'')  
                
            return res
     
  • 相关阅读:
    如何使用VS2013进行单元测试和查看代码覆盖率
    荔枝架构演进历程读后感
    关于海尔电商峰值系统架构读后感
    苏宁易购:商品详情系统架构设计读后感
    第二阶段冲刺第四天
    第二阶段冲刺第五天
    第二阶段冲刺第三天
    第二阶段冲刺第二天
    第二阶段冲刺第一天
    第一阶段末尾
  • 原文地址:https://www.cnblogs.com/xxxsans/p/13611790.html
Copyright © 2020-2023  润新知