链接:https://leetcode-cn.com/problems/path-sum-ii/submissions/
java代码:
class Solution {
List<List<Integer>>ans = new ArrayList();
public List<List<Integer>> pathSum(TreeNode root, int sum) {
List<Integer> temp = new ArrayList();
dfs(root,sum,temp);
return ans;
}
private void dfs (TreeNode root,int sum,List<Integer>temp)
{
if(root==null)
return;
temp.add(root.val);
sum-=root.val;
if(root.left==null&&root.right==null&&sum==0)
{
ans.add(new ArrayList<>(temp));
}
dfs(root.left,sum,temp);
dfs(root.right,sum,temp);
temp.remove(temp.size()-1);//回溯
}
}
相似题目:70.组合