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

凡科网站怎样做广州网站备案

凡科网站怎样做,广州网站备案,久久建筑网会员,网站后台模板 jquery39. 组合总和 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制重…

39. 组合总和

给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。

candidates 中的 同一个 数字可以 无限制重复被选取 。如果至少一个数字的被选数量不同,则两种组合是不同的。 

对于给定的输入,保证和为 target 的不同组合数少于 150 个。

示例 1:

输入:candidates = [2,3,6,7], target = 7
输出:[[2,2,3],[7]]
解释:
2 和 3 可以形成一组候选,2 + 2 + 3 = 7 。注意 2 可以使用多次。
7 也是一个候选, 7 = 7 。
仅有这两种组合。

示例 2:

输入: candidates = [2,3,5], target = 8
输出: [[2,2,2,2],[2,3,3],[3,5]]

示例 3:

输入: candidates = [2], target = 1
输出: []

这道题我用递归写的,当然我觉得递归绝对不算是最优解。因为这道题目与一般递归的不同在于,它的数字可以重复出现但是相同元素的数组却不能重复出现,这就导致一个问题,即我们不能通过标记该数字是否出现来进行排除,因为所有数字都有可能再度被引用,而不能排除则会导致重复数组的出现,如第一个例子中会出现2,2,3以及2,3,2的重复答案。

要解决这个问题最好的办法就是先进行排序(ps.数组先排序在绝大多数情况都能大大简化骤),然后记录每一步的开始位置,例如循环从2开始则下一步的递归也从2开始。因为我们已经将数组排序好了,所以所有已经过循环的数字都可以确定为不会再使用。

class Solution {public List<List<Integer>> combinationSum(int[] candidates, int target) {List<List<Integer>> list = new ArrayList<>();Stack<Integer> stack = new Stack<>();Arrays.sort(candidates);dfs(list,stack,candidates,target,0);return list;}public static void dfs(List<List<Integer>> list, Stack<Integer> stack,int[] nums,int target,int begin){int temp = target;if (temp==0){list.add(new ArrayList<>(stack));return;}for (int i=begin;i<nums.length;i++){if(temp-nums[i]<0)break;temp=temp-nums[i];stack.push(nums[i]);if (temp>=0){dfs(list,stack,nums,temp,i);}stack.pop();temp+=nums[i];}}
}

http://www.yayakq.cn/news/561819/

相关文章:

  • 福州seo建站鹤壁网络推广公司
  • 国外网站国内做二维码北京建设工程交易服务中心网站
  • dedecms更改网站logo乐清做网站建设公司哪家好
  • 西安做网站公司8酷家乐线下培训班
  • 怎么做网络推广网站购买模板做网站
  • 免费建一级域名网站中国沈阳app在哪里下载
  • 医院网站建设中标网站集约化建设题目
  • 张店网站建设价哈尔滨百度推广代理
  • aspx网站跳转代码网站备案需要关闭网站吗
  • 嘉兴做企业网站的公司建设网站能解决什么问题
  • 德化规划与建设局网站网站如何做传输网盘
  • 河北通信建设有限公司网站成全视频免费观看在线看第2季
  • 杭州公司网站域名续费一个域名访问不同的网站
  • html网页设计代码购物网站成都服务器idc托管
  • 怎么免费注册域名辽宁关键词优化排名外包
  • 网站开发主要学些什么软件资阳市网站建设
  • 新网站备案查询欧美风格网站特点
  • 有什么网站可以做电子newcard wordpress
  • 中博建设集团有限公司网站devexpress做网站
  • 链接关系 网站层次结构郑州网站制
  • 买链接网站公司网站设计维护
  • 西乡网站建设公司58这种网站怎么做
  • 动易的网站能否静态网站功能是什么
  • 司法局网站建设方案数字营销是干啥的
  • 有没有人做网站做新媒体文的网站
  • 直播网站商务网站建设与管理
  • wordpress 新闻发布wordpress 界面优化
  • 网站开发 脚本怎么写phpcmsv9蓝色简洁下载网站模板
  • 东莞外贸网站建设工程建设公司官网
  • 网站内容优化的重要性wordpress 文章 碎片