题解 | #牛奶产量总和#

牛奶产量总和

https://www.nowcoder.com/practice/0932ea3bd8514c79849cc658108053bb

考察知识点: 二叉树深度优先搜索、先序遍历

题目分析:

  首先要将之前得到的产奶量数字末尾加上该节点的数字,可以先将原来的数字乘以10,再加上该节点的数字。当左右孩子均为空节点时,即叶子节点,将sum加入到list中。

所用编程语言:java

import java.util.*;

/*
 * public class TreeNode {
 *   int val = 0;
 *   TreeNode left = null;
 *   TreeNode right = null;
 *   public TreeNode(int val) {
 *     this.val = val;
 *   }
 * }
 */

public class Solution {
    ArrayList<Integer> list = new ArrayList<>();
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param root TreeNode类
     * @return int整型
     */
    public int sumNumbers (TreeNode root) {
        // write code here
        getNumber(root, 0);
        int sum = 0;
        for (Integer i : list) {
            sum += i;
        }
        return sum;
    }

    private void getNumber(TreeNode root, int sum) {
        if (root.left == null && root.right == null) {
            list.add(sum * 10 + root.val);
            return ;
        }
        if (root.left != null) {
            getNumber(root.left, sum * 10 + root.val);
        }
        if (root.right != null) {
            getNumber(root.right, sum * 10 + root.val);
        }
    }
}
全部评论

相关推荐

阿武同学:不要写至今,写具体哪年哪月毕业,专业技能往后排,项目往前排,共青团员可以不写
投了多少份简历才上岸
点赞 评论 收藏
分享
牛马43239153...:感觉直接找个厂上班还实在点,现在都9月份了,秋招要么是要26届的,要么是要有工作经验的,你这连实习经历都没有,很难
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务