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

113:路径总和 II

题目:

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

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

解答:

用 go主要坑有两个,一个是二维结果切片传递用指针,一个是临时路径结果每次不共享切片底层数组,并且还需要注意数据顺序性。

教训:切片值传递,复制结构头,共享底层数组,可见数据可能会被改变,需要每次重新申请新切片。

/*** Definition for a binary tree node.* type TreeNode struct {*     Val int*     Left *TreeNode*     Right *TreeNode* }*/import("fmt")
func pathSum(root *TreeNode, targetSum int) [][]int {if root == nil {return [][]int{}}res := make([][]int, 0)path(root, []int{root.Val}, root.Val, targetSum, &res)return res
}
func path(root *TreeNode, cur []int, sum int, targetSum int, res *[][]int) {if root.Left == nil && root.Right == nil {if sum == targetSum {*res = append(*res, cur)//fmt.Printf("----%v",res)  //调试打印return}return}if root.Left != nil {curl := append([]int{}, cur... )   //顺序性curl = append(curl, root.Left.Val)path(root.Left, curl, sum+root.Left.Val, targetSum, res)}if root.Right != nil {curr := append([]int{}, cur...)curr = append(curr, root.Right.Val)path(root.Right, curr, sum+root.Right.Val, targetSum, res)}
}

http://www.dtcms.com/a/283889.html

相关文章:

  • Go语言时间控制:定时器技术详细指南
  • uni-app 配置华为离线推送流程
  • Go语言高并发聊天室(三):性能优化与压力测试
  • 【物联网】基于树莓派的物联网开发【11】——树莓派无法启动修复解决方案
  • Transformer从入门到精通
  • Spring Boot整合阿里云OSS企业级实践:高可用文件存储解决方案
  • 【Docker基础】Docker-compose基础认知:从核心概念到实战解析
  • 闽南话里的俗语(俚语、谚语、歇后语)
  • S7-1200 模拟量模块全解析:从接线到量程计算
  • 苍穹外卖项目日记(day11)
  • Linux内核ICMP协议实现深度解析:网络控制的智慧引擎
  • 《C++初阶之STL》【auto关键字 + 范围for循环 + 迭代器】
  • 基于typescript严格模式以实现undo和redo功能为目标的命令模式代码参考
  • Python-TCP编程-UDP编程-SocketServer-IO各种概念及多路复用-asyncio-学习笔记
  • 从0开始学习R语言--Day49--Lasso-Cox 回归
  • 在UniApp中防止页面上下拖动的方法
  • git@github.com: Permission denied (publickey).
  • 算法竞赛备赛——【图论】求最短路径——Dijkstra
  • 排序算法—交换排序(冒泡、快速)(动图演示)
  • uniapp问题总结
  • 并发事务~
  • 一种融合人工智能与图像处理的发票OCR技术,将人力从繁琐的票据处理中解放
  • 视频安全新思路:VRM视频分片错序加密技术
  • 小架构step系列17:getter-setter-toString
  • 智能视频分析:多行业安全防控的“AI之眼”
  • 嵌入式学习-PyTorch(7)-day23
  • Flutter Android打包学习指南
  • 如何下载视频 (pc端任何视频均可下载)
  • 英伟达Cosmos研究团队开源DiffusionRenderer (Cosmos): 神经逆向与正向渲染与视频扩散模型
  • 视频码率是什么?视频流分辨率 2688x1520_25fps采用 h264格式压缩,其码率为