路徑總和 II——leetcode113
阿新 • • 發佈:2021-12-31
路徑總和 II
題目:路徑總和 II
給你二叉樹的根節點root
和一個整數目標和targetSum
,找出所有從根節點到葉子節點路徑總和等於給定目標和的路徑。
示例 1:
輸入:root = [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum = 22
輸出:[[5,4,11,2],[5,8,4,5]]
題解
class Solution { private List<List<Integer>> res; public void dfs(TreeNode root, int sum, int target, List<Integer> level) { if(root==null) return; sum+=root.val; level.add(root.val); if(root.left==null&&root.right==null) { if(sum==target) { res.add(new ArrayList<>(level)); } level.remove(level.size()-1); return; } dfs(root.left, sum, target, level); dfs(root.right, sum, target, level); level.remove(level.size()-1); } public List<List<Integer>> pathSum(TreeNode root, int targetSum) { res=new ArrayList<>(); List<Integer> level=new ArrayList<>(); dfs(root, 0, targetSum,level); return res; } }