@@ -20,20 +20,20 @@ public class TreeNode {
20
20
}
21
21
}
22
22
public List <List <Integer >> pathSum (TreeNode root , int sum ) {
23
- List <List <Integer >> res = new ArrayList <> ();
24
- helper (res , root , sum , 0 , new ArrayList <>() );
23
+ List <List <Integer >> res = new ArrayList ();
24
+ helper (res , new ArrayList (), root , sum );
25
25
return res ;
26
26
}
27
- public void helper (List <List <Integer >> res , TreeNode root , int sum , int curr , List < Integer > curr_ls ) {
27
+ public void helper (List <List <Integer >> res , List < Integer > cur , TreeNode root , int sum ) {
28
28
if (root ==null ) return ;
29
- curr_ls .add (root .val );
30
- if (curr +root .val ==sum && root .left ==null && root .right ==null ) { //到叶子节点
31
- res .add (new ArrayList <>(curr_ls ));
32
- curr_ls .remove (curr_ls .size ()-1 );
33
- return ;
29
+ cur .add (root .val );
30
+ if (root .left ==null &&root .right ==null &&root .val ==sum ){ //到叶子节点
31
+ res .add (new ArrayList (cur ));
32
+ }else {
33
+ helper (res , cur , root .left , sum -root .val );
34
+ helper (res , cur , root .right , sum -root .val );
34
35
}
35
- helper (res , root .left , sum , curr +root .val , curr_ls );
36
- helper (res , root .right , sum , curr +root .val , curr_ls );
37
- curr_ls .remove (curr_ls .size ()-1 );
36
+ cur .remove (cur .size ()-1 );
37
+ return ;
38
38
}
39
39
}
0 commit comments