@@ -20,20 +20,20 @@ public class TreeNode {
2020 }
2121 }
2222 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 );
2525 return res ;
2626 }
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 ) {
2828 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 );
3435 }
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 ;
3838 }
3939}
0 commit comments