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

网站模块标准版昆明云南微网站建设

网站模块标准版,昆明云南微网站建设,郑州制作网站ihanshi,微信分销商城【递归】【回溯】Leetcode 112. 路径总和 113. 路径总和 II 112. 路径总和解法:递归 有递归就有回溯 记得return正确的返回上去 113. 路径总和 II解法 递归 如果需要搜索整棵二叉树,那么递归函数就不要返回值 如果要搜索其中一条符合条件的路径&#xff…

【递归】【回溯】Leetcode 112. 路径总和 113. 路径总和 II

  • 112. 路径总和
    • 解法:递归 有递归就有回溯 记得return正确的返回上去
  • 113. 路径总和 II
    • 解法 递归

如果需要搜索整棵二叉树,那么递归函数就不要返回值
如果要搜索其中一条符合条件的路径,递归函数就需要返回值,因为遇到符合条件的路径了就要及时返回

112. 路径总和

---------------🎈🎈题目链接🎈🎈-------------------
在这里插入图片描述

解法:递归 有递归就有回溯 记得return正确的返回上去

count初始等于targetsum,逐次减,如果到了叶子结点正好count为0,那么就返回true
终止条件:if(root.left = null && root.right = null && count=0){ return true; }

时间复杂度O(N)
空间复杂度O(N)

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public boolean hasPathSum(TreeNode root, int targetSum) {// 终止条件if(root == null) return false;int count = targetSum-root.val;return help(root,count);}public boolean help(TreeNode root, int count){if(root.left==null && root.right==null && count==0){return true;}if(root.left==null && root.right==null && count!=0){return false;}// 左if(root.left != null){if(help(root.left, count-root.left.val)){return true;}}// 右if(root.right != null){if(help(root.right, count-root.right.val)){return true;}}return false;}}

113. 路径总和 II

---------------🎈🎈题目链接🎈🎈-------------------
在这里插入图片描述

解法 递归

时间复杂度O(N)
空间复杂度O(N)

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {List<List<Integer>> finalresult = new ArrayList<>();public List<List<Integer>> pathSum(TreeNode root, int targetSum) {List<Integer> result = new ArrayList<>();if(root == null) return finalresult;result.add(root.val);helper(root,targetSum-root.val,result);return finalresult;}public void helper(TreeNode root, int count, List<Integer> result){if(root.left == null && root.right==null && count==0){finalresult.add(new ArrayList<>(result)); // 这里千万不能finalresult.add(result) 这就成了添加result的引用,每次都会变}// 左if(root.left != null){result.add(root.left.val);helper(root.left, count-root.left.val,result);result.remove(result.size()-1); // 回溯}// 右if(root.right != null){result.add(root.right.val);helper(root.right,count-root.right.val,result);result.remove(result.size()-1); // 回溯}}
}
http://www.yayakq.cn/news/727275/

相关文章:

  • 网站推广 公司成都网上注册公司流程
  • 中小学网站建设论文番禺网站开发哪家专业
  • 网站开发工程师的要求php网站制作教程
  • 网站域名 文件夹有电脑网站怎么做手机网站
  • 有没有可以做翻译的网站北京 做网站
  • 湖北公司响应式网站建设推荐成品网站w灬源码伊甸3m8u
  • 网站页面设计说明怎么写企业网站的开发流程
  • 网页设计班级网站用什么做首页深圳品牌策划
  • 珠海网站建设网络推广个人做淘宝客网站不能备案吗
  • 南昌商城网站建设公司网站建设实施规范
  • 百度站长资源平台一个网络空间如何做两个网站
  • ppt哪个网站质量高付费wordpress主题
  • 东莞南城电子网站建设西宁的网站设计
  • 369网站建设中心用户反馈数据分析软件园
  • ios移动网站开发详解网上自学电脑课程
  • 艺术学校网站模板同一个服务器可以做多个网站
  • 电子外贸网站模板商城网站建设软件
  • 合肥网站建设推广服务网站着陆页怎么做
  • 网站域名com和cn房屋装修设计app免费
  • 微信网站建设app公司汝州市文明建设门户网站
  • 汕头网站建设网站推广设计方案流程
  • php语言 网站建设上海做网站优化公司
  • 广州化妆品网站建设wordpress 博客信息
  • 个人网站备案内容写什么专业做美食视频的网站
  • 织梦网站必须下载朋友圈广告投放平台
  • 网站收录突然全部没有了seo门户 site
  • asp技术网站开发案例服装网站建设公司推荐
  • 搭建网站赚钱中国能源建设集团投资有限公司
  • 企业网站包含的要素双语网站建设公司
  • 怎么才能申请自己的网站企业网站建设itcask