当前位置: 首页 > news >正文

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;
}

相关文章:

  • Linux命令-basename命令(打印目录或者文件的基本名称)
  • VSCode如何让先前打开的文件不被自动关闭,一直保持在标签栏里(关闭预览模式)
  • Qt博客目录
  • ARP欺骗攻击利用之内网截取图片
  • 【多模态MLLMs+图像编辑】MGIE:苹果开源基于指令和大语言模型的图片编辑神器(24.02.03开源)
  • 微服务入门篇:Nacos注册中心(Nacos安装,快速入门,多级存储,负载均衡,环境隔离,配置管理,热更新,集群搭建,nginx反向代理)
  • C语言:操作符详解
  • 设置了.gitignore文件,但某些需要被忽略的文件仍然显示
  • 法国实习面试——计算机相关专业词汇
  • MySQL单主模式部署组复制集群
  • 【Unity】重力场中的路径预测方法
  • 8.0 Zookeeper 四字命令教程详解
  • 使用x86架构+Nvidia消费显卡12G显存,搭建智能终端,将大模型本地化部署,说不定是未来方向,开源交互机器人设计
  • 寒假作业-day5
  • Spring的学习(上)
  • canvas 高仿 Apple Watch 表盘
  • java8 Stream Pipelines 浅析
  • Netty 4.1 源代码学习:线程模型
  • Python学习笔记 字符串拼接
  • spark本地环境的搭建到运行第一个spark程序
  • storm drpc实例
  • Sublime text 3 3103 注册码
  • vue-router 实现分析
  • vue总结
  • 产品三维模型在线预览
  • 服务器从安装到部署全过程(二)
  • 实战|智能家居行业移动应用性能分析
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • Java数据解析之JSON
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • ​ArcGIS Pro 如何批量删除字段
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #etcd#安装时出错
  • #pragma 指令
  • (007)XHTML文档之标题——h1~h6
  • (4)事件处理——(7)简单事件(Simple events)
  • (C)一些题4
  • (LeetCode C++)盛最多水的容器
  • (独孤九剑)--文件系统
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (四)Controller接口控制器详解(三)
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .cn根服务器被攻击之后
  • .NET Core WebAPI中封装Swagger配置
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • .NET和.COM和.CN域名区别
  • @FeignClient注解,fallback和fallbackFactory
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(朱雀组)
  • [2015][note]基于薄向列液晶层的可调谐THz fishnet超材料快速开关——
  • [2019/05/17]解决springboot测试List接口时JSON传参异常
  • [ABP实战开源项目]---ABP实时服务-通知系统.发布模式
  • [Android Studio] 开发Java 程序
  • [C/C++]数据结构 深入挖掘环形链表问题
  • [HDU3710]Battle over Cities
  • [html] 动态炫彩渐变背景