力扣算法题python_python【力扣LeetCode算法题库】257- 二叉树的所有路径

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

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

示例:

输入:

1

/

2 3

5

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

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

来源:力扣(LeetCode)

链接:https://leetcode-cn.com/problems/binary-tree-paths

class Solution:

def binaryTreePaths(self, root):

"""

:type root: TreeNode

:rtype: List[str]

"""

if not root:

return []

res, stack = [], [(root, "")]

while stack:

node, ls = stack.pop()

if not node.left and not node.right:

res.append(ls + str(node.val))

if node.left:

stack.append((node.left, ls + str(node.val) + "->"))

if node.right:

stack.append((node.right, ls + str(node.val) + "->"))

return res

力扣算法题python_python【力扣LeetCode算法题库】257- 二叉树的所有路径_第1张图片

1.png

理想007

发布了712 篇原创文章 · 获赞 204 · 访问量 6万+

私信

关注

标签:node,python,节点,二叉树,str,LeetCode,root,stack,ls

来源: https://blog.csdn.net/weixin_43838785/article/details/104564654

你可能感兴趣的:(力扣算法题python)