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

力扣-39.组合总和

题目描述

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

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

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

class Solution {List<List<Integer>> res = new ArrayList<>();List<Integer> path = new ArrayList<>();void backtracking(int[] candidates, int target, int sum, int startIndex){if(sum>target)return;if(sum==target){res.add(new ArrayList<>(path));return;}for (int i = startIndex; i < candidates.length; i++) {sum+=candidates[i];path.add(candidates[i]);backtracking(candidates,target,sum,i);sum-=candidates[i];path.remove(path.size()-1);}}public List<List<Integer>> combinationSum(int[] candidates, int target) {int sum = 0;backtracking(candidates,target,sum,0);return res;}
}

小结:终于明白了startIndex是用来去重,像[2,2,3][2,3,2]这种,继续刷,回溯感觉真的难理解,尤其是backtracking()的几个参数。

http://www.xdnf.cn/news/492355.html

相关文章:

  • 开源情报如何成为信息攻防的关键资源
  • 科技型中小企业基本条件及与高新技术企业的区别
  • TIP-2021《SRGAT: Single Image Super-Resolution With Graph Attention Network》
  • 多线程代码案例-2 阻塞队列
  • 五月份嵌入式面试总结
  • Hot100-链表-JS
  • PCIeSwitch 学习
  • 技术博客:探索LPG与RDF在知识图谱构建中的作用
  • 智能呼入:云蝠大模型赋能政府热线
  • 文章记单词 | 第86篇(六级)
  • memcached主主复制+keepalive
  • 如何设置线程池大小
  • Spring bean 的生命周期、注入方式和作用域
  • LangGraph 官方文档翻译 - 快速入门及示例教程(聊天、工具、记忆、人工干预、自定义状态、时间回溯)
  • 【全解析】EN18031标准下的SSM安全存储机制
  • AI专题 | 金融业AI转型:细分业务场景的AI应用
  • Kotlin与Java的融合趋势:从互操作到云原生实践
  • 张量积表示 [Tensor Product Representation, TPR]
  • 指针在访问越界时不崩溃,但是释放的时候发生崩溃,底层原因分析
  • 【视觉任务】深度估计(Depth Estimation)介绍(2025年更新)
  • 【AT32】 AT32 移植 Freemodbus 主站
  • 亲缘半相合供者
  • 第二十次博客打卡
  • 10G 集成 4 口网口连接器的核心优势
  • FC7300 CAN MCAL 配置引导
  • SVMSPro平台如何获取HLS视频流
  • 差分探头为什么要选择使用屏蔽双绞线
  • DeepSeek基础:PPO、DPO、GRPO概念详解
  • Cursor 中的AI模型到底怎么选 ?
  • 城市综合管廊监测与维护一体化解决方案