我試圖打印二叉樹的所有路徑(根到葉路徑),但無濟於事。打印二叉樹(DFS)的所有路徑
我的策略是使用遞歸,其基本情況爲either tree is None or tree node is leaf return
否則,遍歷樹的左側和右側。
但我找不到保留左右樹的方法。
def pathSum(self, root, target, result):
if not root:
return []
if not root.left and not root.right:
return [root.val]
for i in [root.left, root.right]:
path = [root.val] + self.pathSum(i, target, result)
print("path", path)
return path
請定義一個「路徑」 - 它是一個樹的遍歷,或從根到葉的路徑? –
一個路徑是一個根葉路徑 – jen007
我認爲這應該是非常類似於預購遍歷 – jen007