因此,我寫了這段代碼來打印二叉樹的所有根葉子路徑,當它打到基本情況時,它會打印每個路徑,而我想將它存儲在列表,以便最後我有一個列表包含每個路徑。我已經嘗試了幾個使用尾遞歸或使用其他全局列表的東西,但我無法正確實現它。字符串值而不是在遞歸過程中打印
def rootleafPath(self, root):
global arr
if root is None:
return
arr.append(root.rootid)
if self.isLeaf(root):
print arr
self.rootleafPath(root.left)
self.rootleafPath(root.right)
arr.pop()
這將返回
[1, 2, 4]
[1, 2, 5]
[1, 3]
,而我希望我的函數返回,例如[[1,2,4],[1,2,5],[1,3]
列表我在大多數遞歸解決方案中都遇到了這個問題,我需要在打到基本案例而不是打印時存儲結果。
謝謝:)這解決了我的問題。 – Angersmash