題目:
給定一個二叉樹,返回所有從根節點到葉子節點的路徑。
說明: 葉子節點是指沒有子節點的節點。
示例:
輸入: 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
心得:遞歸用得好,二叉樹問題基本都能解決。