精华内容
下载资源
问答
  • 此题题意是求所有根结点叶节点的路径转化为数字后之和。...解法不难,但有几个细节需要考虑清楚。 1)可以用递归函数dfs的参数表内置的返回和来返回数值,也可以直接用dfs返回值,对应于以下...

    此题题意是求所有从根结点到叶节点的路径转化为数字后之和。

    因为是二叉树,容易想到是用递归求解。

    整体思想是从根到叶子进行遍历,其中不断保存当前的中间结果(上一层的结果乘以10后加上当前层根节点的数值)并通过参数向下传递。。。

    到达叶子节点时可以逐层返回最终结果。解法不难,但有几个细节需要考虑清楚。

    1)可以用递归函数dfs的参数表内置的返回和来返回数值,也可以直接用dfs返回值,对应于以下两种定义:

    void dfs(TreeNode *root, int &sum, int pre);

    int dfs(TreeNode *root, int pre);

    2) 因为是从根到叶子节点的路径和,所以需要在判断为叶子节点时返回数值。

    3) 当前节点为空时,直接返回0,这句话可以在递归时省略判断子树是否非空的语句并且避免将非叶子节点的路径加入计算。

     1 /**
     2  * Definition for a binary tree node.
     3  * struct TreeNode {
     4  *     int val;
     5  *     TreeNode *left;
     6  *     TreeNode *right;
     7  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     8  * };
     9  */
    10 class Solution {
    11 public:
    12     int sumNumbers(TreeNode* root) {
    13         int pre = 0;
    14         return dfs(root, pre);
    15     }
    16     int dfs(TreeNode *root, int pre){
    17         if(!root) return 0;
    18         int sum = pre*10 + root->val;
    19         if(!root->left && !root->right) return sum;
    20         return dfs(root->left, sum) + dfs(root->right, sum);
    21     }
    22 };

     

    转载于:https://www.cnblogs.com/naturesound/p/6766743.html

    展开全文
  • Axx:ARJ压缩文件的分包序号文件,用于将一个大文件压至几个小的压缩包中(xx取01-99的数字) A3L:Authorware 3.x库文件 A4L:Authorware 4.x库文件 A5L:Authorware 5.x库文件 A3M,A4M:Authorware Macintosh...
  • 资源在一起解压缩后(windows 平台下解压缩)即可得到《新手高手——C++全方位学习-(零起点范例教学)-》.pdf 一书。 内容简介: 本书总结了十本c++图书及教材的优点,摈弃了它们语言拖沓、层次结构混乱...
  • 我就可以把“array”当作下标从1 开始的数组。 函数和多维数组 6.18 当我向一接受指针的指针的函数传入二维数组的时候,编译器报错了。 6.19 我怎样编写接受编译时宽度未知的二维数组的函数? 6.20 我怎样在...
  • html入门放弃笔记

    2018-05-15 15:06:12
    4、一元素允许多属性,多属性间,排名不分先后,中间用 空格 隔开即可 Demo : 1、创建一 div 标记 ,增加属性 ,设置 align 属性的值为 center ,设置 id 属性的值为 container,设置 title 属性的值为 这...
  • java开源包10

    热门讨论 2013-06-28 10:06:40
    GiftedMotion是一很小的,免费而且易于使用图像互换格式动画是能够设计一有趣的动画了一系列的数字图像。使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的...
  • 《你必须知道的495C语言问题》

    热门讨论 2010-03-20 16:41:18
    1.24 我在一文件中定义了一extern数组,然后在另一文件中使用,为什么sizeof取不数组的大小? 13 声明问题 14 1.25 函数只定义了一次,调用了一次,但编译器提示非法重声明了。 14 *1.26 main的正确...
  • 1.24 我在一文件中定义了一extern数组,然后在另一文件中使用,为什么sizeof取不数组的大小? 13 声明问题 14 1.25 函数只定义了一次,调用了一次,但编译器提示非法重声明了。 14 *1.26 main的正确...
  • 面试题32:从1到n整数中1出现的次数:利用数字规律实现更为简单。 面试题33:把数组排成最小数:首先将数组中的数字全部转换为字符串存储在一个新的数组中,然后比较每两个数字串的拼接的mn和nm的大小,若mn<nm,...
  • 你必须知道的495C语言问题(PDF)

    热门讨论 2009-09-15 10:25:47
    来好像元素。这样合法和可移植吗? . . . . . . . . . . . . 8 2.7 是否自动比较结构的方法? . . . . . . . . . . . . . . . . . . . . 8 2.8 如何向接受结构参数的函数传入常数值? . . . . . . . . . . ....
  • 在这是junit测试单元类我就不提交了,在main()方法中有几个小测试,有兴趣自己玩吧. 这个工具类目前主要有25种正规表达式(有些不常用,但那时才仔细深入的研究了一下正规,写上瘾了,就当时能想到的都写了): 1....
  • 10.5.7 舍入为n有效数字 第III部分 财务公式  第11章 借贷和投资公式 11.1 财务概念 11.1.1 货币时值 11.1.2 现金的流进流出 11.1.3 匹配时间段 11.1.4 第一次付款的时间 11.2 Excel的基本财务函数 ...
  • java 经典习题.doc

    2009-09-16 11:32:59
    题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 【程序12】 题目:...
  • javascript入门笔记

    2018-05-15 15:01:07
    1弹框中,分两次输入两个数字,分别保存在 a 和 b中 2、如果 a 大于 b的话 ,则交换两个数字的位置 使用 短路&&,扩展赋值运算符,位运算 4、条件运算符(三目运算) 单目(一元)运算符 :++,--,! 双目(二元)...
  • linux.chm文档

    2015-07-07 06:37:39
    zip -r file1.zip file1 file2 dir1几个文件和目录同时压缩成一个zip格式的压缩包 unzip file1.zip 解压一个zip格式压缩包 返回顶部索引 ^ RPM 包 - (Fedora, Redhat及类似系统) rpm -ivh package.rpm ...
  • 3.5.6 EOMONTH——计算指定日期向前或向后几个月后的那个月最后一天的日期 140 3.5.7 NETWORKDAYS——计算日期间的所有工作日数 141 3.5.8 NETWORKDAYS.INTL——计算日期间的所有工作日数,使用参数指明周末的...
  • 四组Out-(注意最右边那三个是一组,最左边Q25和Q26中间引脚引出的两个引脚也是一组)各自接什么参照网上的51单片机引脚定义再对照下表:(左边第一位代表左往右第几个辉光管,第二位表示此辉光管对应引脚的数字,...
  • 【程序29】:用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"与"5"不能相连。 【程序30】写一个方法,用二分查找法判断任意整数在...
  • css入门笔记

    2018-05-15 14:58:57
    1.css的概述 1.问题 HTML属性修饰一定局限,是不太便捷 2.css的语法规范 1.使用css样式方式 1.内联样式 行内样式 特点:将css样式定义在HTML标记中 语法: 样式声明:用样式属性和值组成(属性:值;) ...
  • shell时间详细介绍

    2013-03-25 11:03:31
    % s 1970年11日00:00:00目前经历的秒数 % S 秒(00..59) % T 时间(24小时制)(hh:mm:ss) % X 显示时间的格式(%H:%M:%S) % Z 时区 日期域 % a 星期的简称( Sun..Sat) % A 星期的全称( ...
  • 输出PMPN的所有素数,每10个数字1行,其间以空格分隔,但行末不得多余空格。 输入样例: 5 27 输出样例: 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103
  • 6.如果在一B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理? 答 : this.Server.Transfer 7.请编程遍历页面上所有TextBox控件并给它赋值为string.Empty? ...
  • Excel新增工具集

    2011-12-20 09:30:27
    5、英语单词与解释分类:可以将中小学英语单词按照有几个连续字母相同来分类,例如可以将单词中含4个连续相同字母的单词分为一类(标注相同序号);还可以将中小学英语单词的解释按照有1个或2个汉字相同来分类(标注...
  • Linux 操作系统基础教程 清华大学信息学院计算机系 ...网上下载的,但是我不推荐易用这种方法得到 Linux,因为仅仅核心就有几 Mbit 的 数据量,而一完整的发行版本大概都是 1Gbit 左右的数据量...
  • 保存退出,右键PinConfigs.kext显示包内容,打开里面的Info.plist,搜索刚才拷贝的十进制数,记下LayoutID数据,有几个记几个,都记下来,然后将IOKitPersonalities->HDA Hardware Config Resource->...
  • 2009达内SQL学习笔记

    2010-02-10 19:46:58
    select:或多表中检索一或多数据列。包含信息:想选择什么表,什么地方选择。必须要From子句。(最常用) 当多张表里查询的时候,会产生笛卡尔积;可用条件过滤它。 当两相同字段时必须加...
  • 我会以下几个方面来正确看待这次失败.  第一、要敢于面对,面对这次失败不气馁,接受已经失去了这次机会就不会回头这个现实,心理意志和精神上体现出对这次失败的抵抗力。要自信,相信自己经历了这次之后经过...

空空如也

空空如也

1 2 3 4 5
收藏数 81
精华内容 32
关键字:

从1到10中间有几个数字