給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。
說明: 葉子節點是指沒有子節點的節點。
示例:輸入:[5,4,8,11,null,13,4,7,2,null,null,5,1],22
輸出:[ [5,4,11,2], [5,8,4,5] ]
題解:利用dfs回溯法遍歷二叉樹,同時記錄當前路徑的節點值總和,當達到乙個葉子節點時,判斷節點值總和是否等於目標和,如果等於,則得到乙個結果。
class
solution
用於記錄路徑
* 用於記錄結果
*/private
final deque
deque=
newlinkedlist
<
>()
;private
final list
>res=
newarraylist
<
>()
;public list
>
pathsum
(treenode root,
int sum)
/** * @param node 當前搜尋節點
* @param sum 當前路徑的節點值總和
* @param targetsum 目標和
*/private
void
dfs(treenode node,
int sum,
int targetsum)
dfs(node.left,sum,targetsum)
;dfs
(node.right,sum,targetsum)
; deque.
polllast()
;}}
leetcode 113 路徑總和 II
題目描述 給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和sum 22,5 4 8 11 13 4 7 2 5 1返回 5,4,11,2 5,8,4,5 class solution void h...
leetcode113 路徑總和 II
參考自 這位博主!給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和sum 22,5 4 8 11 13 4 7 2 5 1返回 5,4,11,2 5,8,4,5 解題思路 主要思路就是深搜。但是要...
LeetCode113 路徑總和 II
給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和sum 22,5 48 11134 7251返回 5,4,11,2 5,8,4,5 和上一道 路徑總和i 差不多,記錄一下路徑,不要提前退出。記錄路...