求根节点到叶节点数字之和

给你一个二叉树的根节点 root ,树中每个节点都存放有一个 09 之间的数字。

每条从根节点到叶节点的路径都代表一个数字:

  • 例如,从根节点到叶节点的路径 1 -> 2 -> 3 表示数字 123

计算从根节点到叶节点生成的 所有数字之和

叶节点 是指没有子节点的节点。

示例 1:

img

输入:root = [1,2,3]
输出:25
解释:
从根到叶子节点路径 1->2 代表数字 12
从根到叶子节点路径 1->3 代表数字 13
因此,数字总和 = 12 + 13 = 25

示例 2:

img

输入:root = [4,9,0,5,1]
输出:1026
解释:
从根到叶子节点路径 4->9->5 代表数字 495
从根到叶子节点路径 4->9->1 代表数字 491
从根到叶子节点路径 4->0 代表数字 40
因此,数字总和 = 495 + 491 + 40 = 1026

代码如下:

class Solution {
public:int dfs(TreeNode* root,int prevSum){if(root==nullptr){return 0;}int sum=prevSum*10+root->val;//当每遍历一个结点,更新一次sumif(root->left==nullptr&&root->right==nullptr)//当此节点为叶子节点(左右子树都为空)时,就返回sum,不再进行递归{return sum;}else{return dfs(root->left,sum)+dfs(root->right,sum);//递归的计算每一条路径上的值,调用dfs函数}}int sumNumbers(TreeNode* root) {return dfs(root,0);//返回dfs函数的最终结果,prevSum由0开始}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/26691.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu环境搭建

本文以Ubuntu 18.04为例 安装repo mkdir ~/bin export PATH~/bin:$PATH如果可以访问 google 的地址,下载 Repo 工具,并确保它可执行: curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo chmod ax ~/bin/rep…

left join 和except方法区别和联系

目录 相同点: left join except 不同点 假设有两个表:A客户表 和 B客户表,客户uid是唯一主键 相同点: 查询在A中的客户 但不在B中,也就是图中的阴影部分,left join 和except方法都可以实现 left join …

自动化运维工具——Ansible学习(二)

目录 一、handlers和notify结合使用触发条件 1.新建httpd.yml文件 2.复制配置文件到ansible的files目录中 3.卸载被控机已安装的httpd 4.执行httpd.yml脚本 5.更改httpd.conf配置文件 6.使用handlers 7.重新执行httpd.yml脚本 8.检查被控机的端口号是否改变 9.handle…

Java 设计模式——装饰者模式

目录 1.概述2.结构3.案例实现3.1.抽象组件3.2.具体组件3.3.抽象装饰3.4.具体装饰3.5.测试 4.优缺点5.使用场景6.JDK 源码解析——BufferedWriter7.装饰者模式和静态代理的比较 1.概述 (1)我们先来看一个快餐店的例子:快餐店有炒面、炒饭这些…

【DC-DC】AP5193 DC-DC宽电压LED降压恒流驱动器 LED电源驱动IC

产品 AP5193是一款PWM工作模式,高效率、外围简单、内置功率MOS管,适用于4.5-100V输入的高精度降压LED恒流驱动芯片。最大电流2.5A。AP5193可实现线性调光和PWM调光,线性调光脚有效电压范围0.55-2.6V.AP5193 工作频率可以通过RT 外部电阻编程来设定&…

怎么自学网络安全?遇到问题该怎么解决?

趁着今天下班,我花了几个小时整理了下,非常不易,希望大家可以点赞收藏支持一波,谢谢。 我的经历: 我 19 年毕业,大学专业是物联网工程,我相信很多人在象牙塔里都很迷茫,到了大三大…

Kafka学习笔记(高级篇)

目录 高级功能 高效读写 涉及技术 ZooKeeper 自定义拦截器 监控 延迟消费 一些改进手段 高级功能 高效读写 涉及技术 高吞吐量:Kafka 每秒可以处理数百万消息。这是因为 Kafka 消息的处理是以批处理(Batching)的方式来完成的&…

SpringBoot+Vue的学生选课管理系统

1. 技术栈 前端:Vue ElementUI Axios后端:Spring BootMyBatis Plus Jwt MysqlSwagger 2. 系统设计 该系统主要分为五个模块,分别是:学生管理、教师管理、课程管理、开课表管理以及学生成绩管理 角色分为学生、教师、管理员&…

如何搭建自己的图床(GitHub版)

文章目录 1.图床的概念2.用GitHub创建图床服务器2.1.新建仓库2.2.生成Token令牌2.3.创建img分支和该分支下的img文件夹(可选) 3.使用PicGo软件上传图片3.1 下载PicGo软件3.2配置PicGo3.3用PicGo实现上传 4. Typora实现自动上传5.免费图片网站 前言: 如果没有自己的服…

Xshell配置以及使用教程

目录 一、Xshell介绍 二、安装Xshell 三、使用Xshell连接Linux服务器 一、Xshell介绍 Xshell 分为免费版和专业版,是一款远程连接虚拟机系统的 SSH 客户机软件; Xshell免费版官网下载地址:家庭/学校免费 - NetSarang Websitehttps://www…

半小时漫画计算机

ISBN: 978-7-121-41557-9 作者:刘欣(码农翻身) 绘画:刘奕君 页数:210页 阅读时间:2023-06-03 推荐指数:★★★★★ 以漫画的形式来讲解计算机的基础知识, 主要涉及到CPU、内存、网络…

“layui助力博客管理升级!用增删改查功能打造优质博客体验“

目录 引文1.前置条件2.数据接口2.1 UserDao(CRUD)2.2 R工具类 3.HTML 结构3.1 主界面的HTML3.2 用户的查询所有界面的HTML3.3 新增修改通用的的HTML 4.JavaScript 代码4.1 用户的CRUD javaScript 代码(userManage)4.2 新增修改的javaScript代码(userEdit) 5. 运行截图总结 引文…