题目:
给定一个二叉树,返回所有从根节点到叶子节点的路径。
说明: 叶子节点是指没有子节点的节点。
示例:
输入: 1 / \ 2 3 \ 5 输出: ["1->2->5", "1->3"] 解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3
python代码:
class Solution:
def binaryTreePaths(self, root):
res = []
if root == None:
return res
if root.left == None and root.right == None:
res.append(str(root.val))
return res
for path in self.binaryTreePaths(root.left):
res.append(str(root.val) + '->' + path)
for path in self.binaryTreePaths(root.right):
res.append(str(root.val) + '->' + path)
return res
心得:递归用得好,二叉树问题基本都能解决。