题解 | #回文数字#

二叉树根节点到叶子节点和为指定值的路径

https://www.nowcoder.com/practice/840dd2dc4fbd4b2199cd48f2dadf930a?tpId=188&&tqId=38567&rp=1&ru=/activity/oj&qru=/ta/job-code-high-week/question-ranking

import java.util.*;

/*
 * public class TreeNode {
 *   int val = 0;
 *   TreeNode left = null;
 *   TreeNode right = null;
 * }
 */

public class Solution {
    /**
     * 
     * @param root TreeNode类 
     * @param sum int整型 
     * @return int整型ArrayList<ArrayList<>>
     */
     static ArrayList<ArrayList<Integer>> res =  new ArrayList<ArrayList<Integer>>();//存放结果
    static int  sumNum;
    static   ArrayList<Integer> path = new ArrayList<Integer>();//存放路径
    public ArrayList<ArrayList<Integer>> pathSum (TreeNode root, int sum) {
       sumNum = sum;
        findPath(root,0);
        // write code here
        return res;
    }
    //定义一个集合
    static void findPath(TreeNode root, int temps){

        if(root == null){
            return;
        }
        path.add(root.val);
        temps = temps + root.val;
        if(temps == sumNum && root.left == null && root.right == null){

            res.add(new ArrayList<Integer>(path));//复制一个

            //不然还是不断改变
            path.remove(path.size()-1);
            return;
        }
        if(root.left != null){
             findPath(root.left,temps);
        }

        if(root.right != null){
            findPath(root.right,temps);
        }

            path.remove(path.size()-1);






    }





}
全部评论

相关推荐

11-24 00:11
已编辑
广东工业大学 算法工程师
避雷深圳&nbsp;&nbsp;yidao,试用期&nbsp;6&nbsp;个月。好嘛,试用期还没结束,就直接告诉你尽快找下一家吧,我谢谢您嘞
牛客75408465号:笑死,直属领导和 hr 口径都没统一,各自说了一些离谱的被裁理由,你们能不能认真一点呀,哈哈哈哈哈😅😅😅
点赞 评论 收藏
分享
11-08 17:36
诺瓦科技_HR
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务