给出一组候选数字(C)和目标数字(T),找到C中所有的组合,使找出的数字和为T。C中的数字可以无限制重复被选取。

例如,给出候选数组[2,3,6,7]和目标数字7,所求的解为:

[7],

[2,2,3]

注意事项
  • 所有的数字(包括目标数字)均为正整数。
  • 元素组合(a1, a2, … , ak)必须是非降序(ie, a1 ≤ a2 ≤ … ≤ ak)。
  • 解集不能包含重复的组合。

您在真实的面试中是否遇到过这个题?

Yes

样例

给出候选数组[2,3,6,7]和目标数字7

返回 [[7],[2,2,3]]

public class Solution {/*** @param candidates: A list of integers* @param target:An integer* @return: A list of lists of integers*/public List<List<Integer>> combinationSum(int[] candidates, int target) {// write your code hereArrays.sort(candidates);List<List<Integer>> result=new ArrayList<List<Integer>>();ArrayList<Integer> tempList=new ArrayList<Integer>();backTracking(candidates, 0, target, result, tempList);return result;}private static void backTracking(int []candidates,int start,int target,List<List<Integer>> result,ArrayList<Integer> tempList){if(target<0){return;}else if(target==0){if(result.contains(tempList)){return;}result.add(new ArrayList<Integer>(tempList));}else{for(int i=start;i<candidates.length;i++){tempList.add(candidates[i]);backTracking(candidates, i, target-candidates[i], result, tempList);tempList.remove(tempList.size()-1);}}}}

Java实现-数字组合1相关推荐

  1. java实现数字组合

    题目:将1-9这9个数字分成三个百位数,每个数字只能用一次. 要求:第二个数字是第一个数的2倍,第三个数字是第一个的3倍. 输出所有可能的情况. 思路: 用三层循环,第一位是百位数,第二位是十位数,第 ...

  2. java 随机四位数字组合_随机组合生成好听的名字(java)

    前言 初学java,今天学到了字符串数组,于是乎:利用数组+Random(系统随机生成数字)组合生成随机好听的名字: 如图 图片.png 需求:设置两个数组分别保存姓和名然后利用随机数组合 思考:利用 ...

  3. 华为OD机试真题 Java 实现【检查是否存在满足条件的数字组合】【2022Q4 100分】

    一.题目描述 给定一个正整数数组,检查数组中是否存在满足规则的数字组合 规则:A = B + 2C 二.输入描述 第一行输出数组的元素个数. 接下来一行输出所有数组元素,用空格隔开. 三.输出描述 如 ...

  4. java 分裂数字_分裂的补充:超越数字,打印物理可视化

    java 分裂数字 As noted in my earlier Nightingale writings, color harmony is the process of choosing colo ...

  5. 拼多多——多多的数字组合

    多多的数字组合 题目 思路 代码 结果 题目 多多君最近在研究某种数字组合: 定义为:每个数字的十进制表示中(0~9),每个数位各不相同且各个数位之和等于N. 满足条件的数字可能很多,找到其中的最小值 ...

  6. 检查是否存在满足条件的数字组合

    题目信息 输入一组数字,数字之间用空格隔开,判断输入的数字是否可以满足A=B+2C,每个元素最多只可用一次.若有满足的数字组合,依次输出A.B.C三个数字,之间用空格隔开:若无满足条件的组合,输出0. ...

  7. 用java实现combin函数_【算法-Java实现】组合总和

    [算法-Java实现]组合总和 一.问题描述: 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合.c ...

  8. 组合学:26个字母(含大小写)和10个数字组合为4位串的可能性测算

    使用26个字母(含大小写,实际为52个字母)和10个数字组合一个4位的串码,问有多少种组合? 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k' ...

  9. 拼多多2021笔试真题集 多多的数字组合 多多的字符变换 多多的求和计算 多多的骰子组合

    第一题 多多的数字组合 多多君最近在研究某种数字组合: 定义为:每个数字的十进制表示中(0~9),每个数位各不相同且各个数位之和等于N. 满足条件的数字可能很多,找到其中的最小值即可. 输入描述: 共 ...

最新文章

  1. 武汉首座无人驾驶电动汽车充电站投入使用
  2. 【Python】青少年蓝桥杯_每日一题_7.19_电梯用量
  3. amh 4.2 升级php_Centos系统 + AMH4.2面板 PHP升级7.3.5
  4. 卷不动也得继续学!紧跟vue3的步伐,再来get一波进阶新特性!
  5. Forrester:工业4.0 中国制造企业用ICT换来改变
  6. S7-1500 SD卡格式化
  7. 2020蓝桥杯省赛模拟赛
  8. JDK8的下载和安装,以及配置环境变量
  9. JAVA小项目-搜搜移动大厅
  10. UINO优锘:深度|扒一扒图化资源申请之三生三世那点事儿
  11. 北京专科计算机学校排名及分数线,北京专科大学排名及分数线
  12. 在北京租房都多交两个月的房租吗?怎么不通过中介找到合意的房子?
  13. 获取公众号关注页面链接
  14. 在电脑中如何调整PDF文件大小
  15. 【分布式事务】内容较多CAP/BASE/2PC/3PC/TCC/Sega等等等等~,一次性捋清楚
  16. Python批量处理图片名
  17. CCC3.0学习笔记_SCP03安全通道
  18. 前端(JQuery):使用magnify插件实现图片预览
  19. 更改图像长宽 厘米为单位
  20. Qt 打印机打印条形码,二维码

热门文章

  1. Spring IOC和Bean生命周期以及源码分析
  2. Python 数据挖掘之电力窃漏电用户自动识别
  3. 全球及中国食品级隔膜泵行业需求分析与发展战略规划研究报告2022-2028年
  4. 基本数据结构——线性结构(有序表)
  5. python泰坦尼克号数据分析_Python数据分析|泰坦尼克逻辑回归
  6. 程序员的十层楼,你属于哪一层?
  7. 【PS基础教程】PS制作圆形小图标
  8. Keep It for Mac(专业笔记工具)
  9. 视频去水印前端界面布局
  10. 【Win】查看Bing壁纸每天更新的图片