二叉树的所有路径
Last updated
Last updated
问题简述
给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。
叶子节点 是指没有子节点的节点。
思路
先序遍历,特殊处理叶子节点;
# 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]:
ret = []
tmp = []
def dfs(x):
if not x: return
tmp.append(str(x.val))
if not x.left and not x.right:
ret.append('->'.join(tmp))
dfs(x.left)
dfs(x.right)
tmp.pop()
dfs(root)
return ret