zoukankan      html  css  js  c++  java
  • LeetCode 129 求根到叶子节点数字之和

    LeetCode 129 求根到叶子节点数字之和

    问题描述:
    给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。
    例如,从根到叶子节点路径 1->2->3 代表数字 123。
    计算从根到叶子节点生成的所有数字之和。
    说明: 叶子节点是指没有子节点的节点。

    递归

    执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户
    内存消耗:36 MB, 在所有 Java 提交中击败了93.98%的用户

    class Solution {
        private int sum = 0;
    
        public int sumNumbers(TreeNode root) {
            if(root==null) {
                return 0;
            }
            //递归
            sumNumbers(root, 0);
            return sum;
        }
    
        public void sumNumbers(TreeNode root, int lastSum) {
            //非叶子节点
            if(root==null) {
                return;
            }
            //叶子节点
            else if(root!=null && root.left==null && root.right==null) {
                sum += lastSum*10 + root.val;
            }
            else {
                lastSum = lastSum*10 + root.val;
                sumNumbers(root.left, lastSum);
                sumNumbers(root.right, lastSum);
            }
    
            return;
        }
    }
    
  • 相关阅读:
    原型模式
    windows下Redis安装及利用java操作Redis
    redis笔记
    STS 安装SVN插件
    java 操作MongoDB简易工具类
    Mysql 单表数据量过大移除数据
    Mysql 提示拷贝效率
    JS 图片显示一部分 小计
    FashJson转换
    WIndow MongoDb安装和启动
  • 原文地址:https://www.cnblogs.com/CodeSPA/p/13894721.html
Copyright © 2011-2022 走看看