24 二叉樹中和為某一值的路徑(劍指offer)

2021-10-13 20:15:15 字數 534 閱讀 2050

24. 二叉樹中和為某一值的路徑

輸入一顆二叉樹和乙個整數,列印出二叉樹中結點值的和為輸入整數的所有路徑。路徑定義為從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。(輸入 —— 輸出)

,22  —— [[10,5,7],[10,12]]

,15 —— [ ]

1. 思路:

深度優先搜尋。使用前序遍歷,使用兩個全域性變數result和tmp,result來存放最終結果,tmp用來存放臨時結果。

每次遍歷,我們先把root的值壓入tmp,然後判斷當前root是否同時滿足:

* 與給定數值相減為0;

* 左子樹為空;

* 右子樹為空。

如果滿足條件,就將tmp壓入result中,否則,依次遍歷左右子樹。需要注意的是,遍歷左右子樹的時候,全域性變數tmp是不清空的,直到到了根結點才請空tmp。

2. **+結果:

24 二叉樹中和為某一值的路徑

題目描述 輸入一顆二叉樹和乙個整數,列印出二叉樹中結點值的和為輸入整數的所有路徑。路徑定義為從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。時間限制 1秒 空間限制 32768k 思路 dfs深度優先搜尋 struct treenode class solution 需要彈出是因為要回退到...

24 二叉樹中和為某一值的路徑

輸入一顆二叉樹的跟節點和乙個整數,列印出二叉樹中結點值的和為輸入整數的所有路徑。路徑定義為從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。注意 在返回值的list中,陣列長度大的陣列靠前 struct treenode class solution void dfs treenode ro...

( )24 二叉樹中和為某一值的路徑

輸入一顆二叉樹的跟節點和乙個整數,列印出二叉樹中結點值的和為輸入整數的所有路徑。路徑定義為從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。注意 在返回值的list中,陣列長度大的陣列靠前 總結 總結下二叉樹中的路徑問題 112.路徑總和 給定乙個二叉樹和乙個目標和,判斷該樹中是否存在根節點...