力扣(leetcode)第257题二叉树的所有路径(Python)

257.二叉树的所有路径

题目链接:257.二叉树的所有路径

给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。

叶子节点 是指没有子节点的节点。

示例 1:
力扣(leetcode)第257题二叉树的所有路径(Python)_第1张图片
输入:root = [1,2,3,null,5]
输出:[“1->2->5”,“1->3”]

示例 2:
输入:root = [1]
输出:[“1”]

提示:

树中节点的数目在范围 [1, 100] 内
-100 <= Node.val <= 100

解答

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

最后,我写了一篇MySQL教程,里面详细的介绍了MySQL的基本概念以及操作指令等内容,欢迎阅读!
MySQL数据库万字保姆级教程

你可能感兴趣的:(Python题集,leetcode,python,算法,开发语言)