java怎么求组合总和

免费建站   2024年03月30日 0:00  

这篇“java怎么求组合总和”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“java怎么求组合总和”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让我们一起来看看具体内容吧。

给定一个数组candidates和一个目标数target,找出candidates中所有可以使数字和为target的组合。

candidates中的每个数字在每个组合中只能使用一次。

说明:

所有数字(包括目标数)都是正整数。

解集不能包含重复的组合。

示例1:

输入:candidates=,target=,所求解集为:[[1,7],[1,2,5],[2,6],[1,1,6]]

示例2:

输入: candidates =[2,5,2,1,2], target =5,所求解集为:[ [1,2,2], [5]]

组合总和

解析:

这里首先要对数组进行排序,result表示查找的结果,cur表示查找的其中一个组合,先用target减去数组中的值,如果结果等于0,则表示找到,然后加入到result中,如果target大于0,则继续查找。这里使用了递归的思想。如果for循环条件满足的时候就把当前值加入到cur中,然后递归调用,我们知道递归的原理就是先调用然后再回退,回退的时候把cur最后一个加入的删除,然后再判断。比如数组{1,2,4,6},target为7,当cur包含{1,2,4}的时候正好等于7,然后回退的时候把4移除,然后for循环判断还是不成立,再把2移除,然后再判断加入6合适……

java基本数据类型有哪些

Java的基本数据类型分为:1、整数类型,用来表示整数的数据类型。2、浮点类型,用来表示小数的数据类型。3、字符类型,字符类型的关键字是“char”。4、布尔类型,是表示逻辑值的基本数据类型。

感谢您的阅读,希望您对“java怎么求组合总和”这一关键问题有了一定的理解,具体使用情况还需要大家自己动手实验使用过才能领会,快去试试吧,如果想阅读更多相关知识点的文章,欢迎关注行业资讯频道!

域名注册
购买VPS主机

您或许对下面这些文章有兴趣:                    本月吐槽辛苦排行榜

看贴要回贴有N种理由!看帖不回贴的后果你懂得的!


评论内容 (*必填):
(Ctrl + Enter提交)   

部落快速搜索栏

各类专题梳理

网站导航栏

X
返回顶部