题目
思路
递归
终止条件:叶子节点,返回节点值
过程:对每个左右子树的子路径,加上根节点的值
代码
class Solution:
def binaryTreePaths(self, root: TreeNode) -> List[str]:
res = []
if root == None:
return res
if root.left == None and root.right == None:
res.append(str(root.val))
return res
left = self.binaryTreePaths(root.left)
for i in left:
res.append(str(root.val)+'->'+i)
right = self.binaryTreePaths(root.right)
for i in right:
res.append(str(root.val)+'->'+i)
return res