113.路径总和 II

给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。

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

示例 1:

输入:root = [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum = 22
输出:[[5,4,11,2],[5,8,4,5]]

示例 2:

输入:root = [1,2,3], targetSum = 5
输出:[]

示例 3:

输入:root = [1,2], targetSum = 0
输出:[]

提示:

  • 树中节点总数在范围 [0, 5000] 内
  • -1000 <= Node.val <= 1000
  • -1000 <= targetSum <= 1000

vector<vector<int>> result;
vector<int> path;void traversal(TreeNode *root, int count) {//判断是否为叶子结点if (!root->left && !root->right && count == 0){//递归结束条件满足result.push_back(path);return;}//是叶子结点但结果不为0if (!root->left && !root->right && count != 0){//直接结束即可return;}// 左if (root->left){//记录遍历数值path.push_back(root->left->val);count -= root->left->val;traversal(root->left,count);//回溯count += root->left->val;//弹出遍历数值path.pop_back();}// 右if (root->right){path.push_back(root->right->val);count -= root->right->val;traversal(root->right,count);//回溯count += root->right->val;//弹出遍历数值path.pop_back();}
}vector<vector<int>> pathSum(TreeNode *root, int targetSum) {if (root == nullptr) return result;//放入根节点path.push_back(root->val);traversal(root, targetSum - root->val);return result;
}

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

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

相关文章

【开源】JAVA+Vue+SpringBoot实现实验室耗材管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 耗材档案模块2.2 耗材入库模块2.3 耗材出库模块2.4 耗材申请模块2.5 耗材审核模块 三、系统展示四、核心代码4.1 查询耗材品类4.2 查询资产出库清单4.3 资产出库4.4 查询入库单4.5 资产入库 五、免责说明 一、摘要 1.1…

服务器禁用了请求中指定的方法

服务器禁用了请求中指定的方法 python post请求时报错 服务器禁用了请求中指定的方法 错误代码 response = requests.post(fhttp://api.fe.udream.cc/api/UserEngineering/UpdateTask?usertoken=132e5a6e12a6bbff88154b27b0241819&timestamp={timestamp}, json=json.dumps…

RocketMQ客户端实现多种功能

目录 RocketMQ客户端基本流程 消息确认机制 1、消息生产端采用消息确认加多次重试的机制保证消息正常发送到RocketMQ 单向发送 同步发送 异步发送 2、消息消费者端采用状态确认机制保证消费者一定能正常处理对应的消息 3、消费者也可以自行指定起始消费位点 广播消息 …

技术精英求职必备:测试工程师简历制作全指南

简历编写核心原则 撰写针对软件测试工程师职位的简历时&#xff0c;关键在于精确展现您在软件测试、质量保证和错误诊断方面的专业技能、项目经验和技术成就。简历应作为您展示测试策略设计、自动化测试实施和问题解决能力的窗口&#xff0c;确保每一项经历和技能都与软件测试…

【Web】基于Mybatis的SQL注入漏洞利用点学习笔记

目录 MyBatis传参占位符区别 不能直接用#{}的情况 in多参数值查询 like %%模糊查询 order by列名参数化 MyBatis传参占位符区别 在 MyBatis 中&#xff0c;#{} 和 ${} 都是用于传参的占位符&#xff0c;但它们之间有很大的区别&#xff0c;主要体现在两个方面&#xff1a…

并发容器+并发队列【ConcurentHashMap、CopyOnWriteArrayList、阻塞队列、ArrayBlockingQueue】

并发容器 什么是并发容器?同步容器:并发容器: ConcurrentHashMap结构图JDK1.7结构图JDK1.8结构图 CopyOnWriteArrayList实现原理 并发队列阻塞队列ArrayBlockingQueue 转自极客时间 什么是并发容器? 在JUC包中&#xff0c;有一大部分是关于并发容器的&#xff0c;如Concurr…

【Python中Selenium元素定位的各种方法】

1、元素定位操作&#xff1a; 2、创建浏览器驱动操作&#xff0c;导入By模块&#xff1a; from selenium import webdriver # 用于界面与浏览器互动 from selenium.webdriver.common.by import By # 用于元素定位 driver webdriver.Chrome() # 调用Chrome类&#xff0c;创…

材料非线性Matlab有限元编程:初应力法与初应变法

导读:本文主要围绕材料非线性问题的有限元Matlab编程求解进行介绍,重点围绕牛顿-拉普森法(切线刚度法)、初应力法、初应变法等三种非线性迭代方法的算法原理展开讲解,最后利用Matlab对材料非线性问题有限元迭代求解算法进行实现,展示了实现求解的核心代码。这些内容都将收…

2023年总结

人们总说时间会改变一切&#xff0c;但事实上你得自己来。 今年开始给自己的时间读书、工作、生活都加上一个2.0的release版本号&#xff0c;相比过去的一年还是有很多进步的。 就跟git commit一样&#xff0c;一步一步提交优化&#xff0c;年底了发个版本。用李笑来的话说&am…

【洛谷题解】P1595 信封问题

题目链接&#xff1a;信封问题 - 洛谷 题目难度&#xff1a;普及- 涉及知识点&#xff1a;错排 题意&#xff1a; 分析&#xff1a;直接用错排公式代入即可 AC代码推理公式&#xff1a; #include<bits/stdc.h> using namespace std; long long f[25]; int main()//用…

服务器被黑,安装Linux RootKit木马

前言 疫情还没有结束&#xff0c;放假只能猫家里继续分析和研究最新的攻击技术和样本了&#xff0c;正好前段时间群里有人说服务器被黑&#xff0c;然后扔了个样本在群里&#xff0c;今天咱就拿这个样本开刀&#xff0c;给大家研究一下这个样本究竟是个啥&#xff0c;顺便也给…

《MySQL 简易速速上手小册》第10章:未来趋势和进阶资源(2024 最新版)

文章目录 10.1 MySQL 在云计算和容器化中的应用10.1.1 基础知识10.1.2 重点案例&#xff1a;使用 Python 部署 MySQL 到 Kubernetes10.1.3 拓展案例 1&#xff1a;在 AWS RDS 上部署 MySQL 实例10.1.4 拓展案例 2&#xff1a;使用 Docker 部署 MySQL 10.2 MySQL 和 NoSQL 的整合…

基于图像掩膜和深度学习的花生豆分拣(附源码)

目录 项目介绍 图像分类网络构建 处理花生豆图片完成预测 项目介绍 这是一个使用图像掩膜技术和深度学习技术实现的一个花生豆分拣系统 我们有大量的花生豆图片&#xff0c;并以及打好了标签&#xff0c;可以看一下目录结构和几张具体的图片 同时我们也有几张大的图片&…

基于片段的3D分子生成扩散模型 - AutoFragDiff 评测

AutoFragDiff 是一个基于片段的&#xff0c;自回归的&#xff0c;口袋条件下的&#xff0c;3D分子生成扩散模型。 AutoFragDiff方法来源于文章《Autoregressive fragment-based diffusion for pocket-aware ligand design》&#xff0c;由加州大学的Mahdi Ghorbani等人于2023年…

星辰AI大模型TeleChat-7B评测

0x0. 前言 受中电信 AI 科技有限公司的邀请&#xff0c;为他们近期开源的TeleChat-7B大模型做一个评测。 TeleChat-7B是由中电信 AI 科技有限公司发的第一个千亿级别大模型&#xff0c;基于transformer decoder架构和清洗后的1TB高质量数据训练而成&#xff0c;取得了相同参数…

【Java EE初阶十一】文件操作(IO)

1. 认识文件 所谓的文件是一个广义的概念&#xff0c;可以代表很多东西&#xff1b;在操作系统里面&#xff0c;会把很多的硬件设备和软件设备都抽象成“文件”&#xff0c;统一进行管理&#xff1b;但是大部分情况下&#xff0c;我们读到的文件&#xff0c;都是指硬盘的文件&a…

基础算法-高精度加法

基础算法-高精度加法 高精度算法 为什么要使用高精度算法 C 每一个变量都有自己的类型&#xff0c;每个类型都有自己的存储长度范围。 名称 关键字 字节 长度 短整型 short int 2 (-2的15次方)~(2的15次方-1) 整型 int 4 (-2的31次方)~(2的31次方…

MYSQL笔记:约束条件

MYSQL笔记&#xff1a;约束条件 主键约束 不能为空&#xff0c;值必须是不同的&#xff08;唯一性&#xff09; 一个表只能修饰一个主键 PRIMARY KEY自增约束 AUTO_INCREMENT唯一键约束 可以为空 unique非空约束 not null 默认值约束 default 外键约束 foreign key …

技术精英求职必备:大模型研发工程师简历制作指南

简历编写核心原则 当撰写针对专注于GPT系列大型语言模型的算法工程师职位的简历时&#xff0c;关键在于准确展现您在大型语言模型开发、自然语言处理和机器学习方面的专业技能、项目经验和技术成就。简历应作为您在GPT系列模型研发、数据处理、模型训练和优化能力的窗口&#…

CMD常用命令

目录 1.简介 2.基本功能 3.打开方式 4.常用命令 5.练习——通过CMD打开QQ 1.简介 CMD&#xff08;Command Prompt&#xff09;是Windows操作系统中的命令行界面工具&#xff0c;它允许用户通过键入文本命令来与操作系统进行交互。CMD提供了一种不依赖图形用户界面的方式来…