給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。
說明: 葉子節點是指沒有子節點的節點。
dfs,同時回溯法記錄所有經過的節點,儲存在path向量中,當遍歷到葉子節點,檢查sum是否符合要求,符合要求則將path加到ans裡面。
/**
* definition for a binary tree node.
* struct treenode
* };
*/class
solution
return
;//葉子節點結束,不需要再向下遍歷
} path.
push_back
(root-
>val);if
(root-
>left)
dfs(root-
>left,sum-root-
>val);if
(root-
>right)
dfs(root-
>right,sum-root-
>val)
; path.
pop_back()
;}vectorint>
>
pathsum
(treenode* root,
int sum)
};
leetcode113 路徑總和 II(dfs)
給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和 sum 22,5 48 11134 7251返回 5,4,11,2 5,8,4,5 definition for a binary tree no...
leetcode113(路徑總和II DFS回溯)
給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 輸入 5,4,8,11,null,13,4,7,2,null,null,5,1 22 輸出 5,4,11,2 5,8,4,5 題解 利用dfs回溯法遍歷二叉樹,同時記錄當前路...
113 路徑總和
難度 中等 題目描述 思路總結 這題看到以後,就是和上一題做法一樣,只要每次都記錄val值就好了。但是做的時候才發現遞迴方法每次返回的path陣列,會更新當前的路徑陣列,所以左右每次遞迴需要傳進去當前path陣列的copy。題解一 definition for a binary tree node....