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

wordpress邀请码注册引擎优化搜索

wordpress邀请码注册,引擎优化搜索,什么网站是vue做的,北京seo公司排名一、题目概述 二、思路方向 为了解决这个问题,我们可以使用回溯算法来找到所有可能的组合,使得组合中的数字之和等于目标数 target。因为数组中的元素可以无限制地重复选择,所以在回溯过程中,我们不需要跳过已经选择的元素&#x…

一、题目概述

二、思路方向

       为了解决这个问题,我们可以使用回溯算法来找到所有可能的组合,使得组合中的数字之和等于目标数 target。因为数组中的元素可以无限制地重复选择,所以在回溯过程中,我们不需要跳过已经选择的元素,而是可以从当前位置开始继续选择。

三、代码实现  

import java.util.ArrayList;  
import java.util.Arrays;  
import java.util.List;  public class Solution {  List<List<Integer>> result = new ArrayList<>();  public List<List<Integer>> combinationSum(int[] candidates, int target) {  Arrays.sort(candidates); // 对数组进行排序,有助于提前结束回溯  List<Integer> tempList = new ArrayList<>();  backtrack(candidates, target, 0, tempList);  return result;  }  private void backtrack(int[] candidates, int remain, int start, List<Integer> tempList) {  if (remain < 0) {  return; // 如果剩余需要达到的和已经是负数,则剪枝  }  if (remain == 0) {  result.add(new ArrayList<>(tempList)); // 如果剩余需要达到的和为0,则找到了一种符合条件的组合  return;  }  for (int i = start; i < candidates.length; i++) {  // 因为元素可以重复选择,所以我们不需要跳过已经选择过的元素  // 但可以通过排序和剪枝来避免不必要的搜索  if (i > start && candidates[i] == candidates[i - 1]) {  continue; // 跳过重复的元素,避免产生重复的组合  }  tempList.add(candidates[i]);  backtrack(candidates, remain - candidates[i], i, tempList); // 注意这里是从i开始,允许选择相同的数字  tempList.remove(tempList.size() - 1); // 回溯,撤销选择  }  }  public static void main(String[] args) {  Solution solution = new Solution();  int[] candidates = {2, 3, 6, 7};  int target = 7;  List<List<Integer>> combinations = solution.combinationSum(candidates, target);  for (List<Integer> combination : combinations) {  System.out.println(combination);  }  }  
}

执行结果: 

四、小结

       在这个解决方案中,我们首先对数组进行排序,这是为了在处理过程中能够更方便地进行剪枝和跳过重复元素。然后,我们使用一个递归函数 backtrack 来遍历所有可能的组合。在递归函数中,我们检查当前的和是否等于目标值,或者是否已经是负数(如果是负数则剪枝)。然后,我们遍历数组,从当前位置开始选择元素,并递归地调用 backtrack 函数,传入剩余需要达到的和、下一个开始的位置(允许选择相同的数字)、以及当前的组合列表。最后,在回溯过程中,我们需要撤销选择,以便尝试其他可能的组合。

       注意,在这个解决方案中,我们使用了 List<List<Integer>> 来存储所有可能的组合,并且使用 ArrayList 作为内部的临时列表来构建每个组合。在找到一种符合条件的组合时,我们通过创建一个新的 ArrayList 实例来将其添加到结果列表中,以避免在后续的回溯过程中修改已经添加到结果列表中的组合。

 结语 

只有流过血的手指

才能弹出世间的绝唱

!!!

http://www.yidumall.com/news/57234.html

相关文章:

  • 橙子建站官网是哪个百度推广怎么做的
  • 成都企业建站系统全球搜
  • 做网站网络培训学校招生方案范文
  • 长治网站运营新品上市怎么推广词
  • 电脑自带做网站的软件营销型网站建设需要多少钱
  • 手机网站自动适配北京seo营销公司
  • 在那个网站做义工好哈尔滨最新疫情
  • 网站设计建设最新的即时比分
  • wordpress 主题制作 dreamwaverqq群排名优化软件购买
  • 网站开发实现软硬件环境九幺seo优化神器
  • 做名宿比较好的网站免费网站推广网站在线
  • 海口企业网站建设凡科建站客服电话
  • 做网站主题青岛seo关键字排名
  • 赌博网站到底怎么做深圳关键词优化
  • 网站如何提高转化率军事新闻最新24小时
  • 网站建设干货图书网络运营推广具体做什么工作
  • 莒县网站制作公司线下推广公司
  • 做淘宝客优惠券网站必须是企业吗网址ip地址查询工具
  • c#web网站开发源码爱站网长尾关键词
  • WordPress增加文章来源插件大丰seo排名
  • lol网站怎么做地推团队
  • 全国icp网站备案审核时间如何做关键词优化
  • 做网站后期自己可以维护吗网上接单平台
  • 四川省人民政府官网首页企业seo顾问公司
  • 现在还有企业做网站的吗百度下载安装2021最新版
  • 跨境b2b网站怎么做最近时事新闻热点事件
  • wordpress更换主题方法seo诊断网站
  • 公司做网站 分录谷歌seo代运营
  • 网站附件做外链嘉兴关键词优化报价
  • 网站创建网站seo优化流程