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

山西省建设厅网站官网多少钱 英文

山西省建设厅网站官网,多少钱 英文,我想学做网站,企业建网站的目的题目 给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。 路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点…

题目

给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。
路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。

一、代码实现(双重递归法)

func pathSum(root *TreeNode, targetSum int) int {if root == nil {return 0}// 计算以当前节点为起点的路径数 + 左右子树的路径数return dfs(root, targetSum) + pathSum(root.Left, targetSum) + pathSum(root.Right, targetSum)
}func dfs(node *TreeNode, remain int) int {if node == nil {return 0}count := 0if node.Val == remain {count++}// 递归处理左右子树,更新剩余目标值count += dfs(node.Left, remain - node.Val)count += dfs(node.Right, remain - node.Val)return count
}

二、算法分析(递归法)

1. 核心思路
  • 双重递归结构:外层递归遍历所有节点作为路径起点,内层递归计算以该节点为起点的路径数目
  • 暴力穷举:对每个节点及其子树进行深度优先搜索,统计符合条件的路径
2. 关键步骤
  1. 外层递归:遍历每个节点作为可能的路径起点
  2. 内层递归:以当前节点为起点,向下搜索满足sum=targetSum的路径
  3. 终止条件:空节点返回0,当前节点值等于剩余值时计数+1
  4. 状态传递:将剩余值remain - node.Val传递给子树
3. 复杂度
指标说明
时间复杂度O(n²)每个节点触发一次O(n)的子树遍历
空间复杂度O(h)h为树高度(递归栈空间)

三、代码实现(前缀和优化法)

func pathSum(root *TreeNode, targetSum int) int {prefixSum := make(map[int]int)prefixSum[0] = 1 // 处理根节点自身满足条件的情况return dfs(root, 0, targetSum, prefixSum)
}func dfs(node *TreeNode, currSum int, target int, prefixSum map[int]int) int {if node == nil {return 0}currSum += node.Valcount := prefixSum[currSum - target]prefixSum[currSum]++count += dfs(node.Left, currSum, target, prefixSum)count += dfs(node.Right, currSum, target, prefixSum)prefixSum[currSum]-- // 回溯return count
}

四、算法分析(前缀和法)

1. 核心思路
  • 前缀和哈希表:记录从根节点到当前节点的路径和出现次数
  • 数学关系:若存在currSum - target = oldSum,则oldSum -> currSum的路径和为target
2. 关键步骤
  1. 初始化哈希表:预存prefixSum[0]=1处理根节点自身满足条件的情况
  2. 更新当前和:累加节点值到currSum
  3. 查询差值:计算currSum - target的出现次数
  4. 回溯操作:维护哈希表状态避免子树间的干扰
3. 复杂度
指标说明
时间复杂度O(n)单次遍历所有节点
空间复杂度O(n)哈希表存储n个节点的前缀和

五、图解示例

root = [10,5,-3,3,2,null,11], targetSum=8为例:

        10/  \5   -3/ \    \3   2   11

前缀和法流程

  1. 路径10→5→3:和为18 → 18-8=10(无记录)
  2. 路径10→5→2:和为17 → 17-8=9(无记录)
  3. 路径10→5:和为15 → 15-8=7(无记录)
  4. 路径10→-3→11:和为18 → 18-8=10(命中初始0)
    最终计数:3(路径5→3、路径5→2→1、路径-3→11)

六、边界条件与扩展

1. 特殊场景验证
  • 空树:返回0
  • 负数和零:如root = [-2,null,-3], target=-5 → 返回1
  • 重复路径:多节点值相同的情况需正确计数
2. 扩展应用
  • 多条件路径统计:同时满足和值与节点数限制
  • 动态目标值:支持实时修改targetSum的在线查询
  • 路径回溯:记录具体路径而非仅计数(需维护路径栈)

七、总结与优化方向

1. 方法对比
方法优势劣势适用场景
双重递归实现简单时间复杂度高小规模树(n<1000)
前缀和线性时间复杂度需要维护哈希表状态大规模树
2. 工程优化
  • 并行计算:对左右子树进行并发遍历(Go协程)
  • 内存预分配:根据树高度预判哈希表容量
  • 数值溢出处理:使用int64存储累加和
3. 算法扩展
  • K路径问题:统计和值为targetSum的TopK最长路径
  • 三维路径:推广到三叉树等复杂结构
  • 流式处理:支持无法完整加载内存的超大树结构

文章转载自:

http://0l90EHes.nqxdg.cn
http://iEZMGXzI.nqxdg.cn
http://uaO0U7Fk.nqxdg.cn
http://ySIhUsWc.nqxdg.cn
http://XONgdqal.nqxdg.cn
http://IuDezYlB.nqxdg.cn
http://7sybOEEI.nqxdg.cn
http://YjMFjas8.nqxdg.cn
http://CjRYyBLD.nqxdg.cn
http://a5FYiqag.nqxdg.cn
http://5Udj17TW.nqxdg.cn
http://TiRq1NpW.nqxdg.cn
http://ZpWflSDd.nqxdg.cn
http://sPsBFzEr.nqxdg.cn
http://pHOJEm7A.nqxdg.cn
http://CxP9abMk.nqxdg.cn
http://jvtIhhfF.nqxdg.cn
http://BCEvFJyO.nqxdg.cn
http://3wjbg70f.nqxdg.cn
http://Kacz2ILa.nqxdg.cn
http://j7Z8WD2D.nqxdg.cn
http://z4PWBSqv.nqxdg.cn
http://13I7e0RH.nqxdg.cn
http://LLDD06wR.nqxdg.cn
http://CSEi7Wg8.nqxdg.cn
http://Lnyi3dU4.nqxdg.cn
http://FWRVMZ3z.nqxdg.cn
http://gBC4CuWj.nqxdg.cn
http://jHgSFvIv.nqxdg.cn
http://QwUbCnnU.nqxdg.cn
http://www.dtcms.com/wzjs/771213.html

相关文章:

  • 长沙网站开发微联wordpress文件缓存
  • 网站前端如何做兼职展厅展馆策划设计
  • 单页网站做淘宝客广告文案模板
  • 卡盟网站建设WordPress小程序开发
  • 常州专业做网站公司线上培训课程
  • 王建设的网站seo范畴有哪些
  • 天猫网站是怎么做seo优化的网页设计与网站建设+pdf
  • 怎么做网站交易物流跟踪网站建设
  • 京东网站建设策划书有没有做网页的兼职网站
  • iis架设网站教程网址导航百万字论坛
  • 从零精通网站建设网站设计网站项目流程图
  • 招商加盟的网站应该怎么做石家庄新钥匙建站
  • 网站建设任务执行书在门户网站做产品单页多少钱一天
  • 长沙招聘网58同城招聘发布呼和浩特整站优化
  • 荆门网站建设 金键盘seo站长网
  • 商城网站建设清单苏州相城做网站的
  • 苏州cms模板建站上海发布官网app下载
  • 平台网站模板 优帮云wordpress caller_get_posts
  • 外贸网站建站i小程序代理都是假的
  • 织梦做的网站如何优化好一个网站
  • 有做soho网站的吗珠海集团网站建设报价
  • 成都大丰网站建设例表网企点是干嘛用的
  • 绿色环保材料网站模板下载wps做网站框架
  • 网站建设 贴吧设计开发网站
  • 设计公司网站需要多少钱数据平台
  • 湖南学校网站建设建设电子商务网站所应用的技术
  • 上海设计网站与公司品牌推广方案范文
  • seo网站结构优化招投标网站销售怎么做
  • 网站建设入账哪个科目做网站是通过怎么挣钱
  • 建设监理协会网站建设工程施工范围