AcWing 47. 二叉树中和为某一值的路径
原题链接
中等
作者:
湫
,
2019-11-26 20:47:37
,
所有人可见
,
阅读 984
Java代码
class Solution {
int s = 0;
List<List<Integer>> list = new ArrayList<>();
List<Integer> l = new ArrayList<>();
public List<List<Integer>> findPath(TreeNode root, int sum) {
if(root==null)return list;
dfs(root,sum);
return list;
}
void dfs(TreeNode root,int sum){
if(root==null)return ;
s+=root.val;
l.add(root.val);
if(root.left==null&&root.right==null&&s==sum){
list.add(new ArrayList<>(l));
}
dfs(root.left,sum);
dfs(root.right,sum);
s-=root.val;
l.remove(l.size()-1);
return ;
}
}