39. 组合总和#
问题描述#
给定一个无重复元素的数组
candidates和一个目标数target,找出candidates中所有可以使数字和为target的组合。
candidates中的数字可以无限制重复被选取。说明:
- 所有数字(包括
target)都是正整数。- 解集不能包含重复的组合。
示例 1:
输入:candidates =[2,3,6,7],target =7, 所求解集为: [ [7], [2,2,3] ]示例 2:
输入:candidates = [2,3,5],target = 8, 所求解集为: [ [2,2,2,2], [2,3,3], [3,5] ]
提示:
1 <= candidates.length <= 301 <= candidates[i] <= 200candidate中的每个元素都是独一无二的。1 <= target <= 500
解题思路#
深搜。直接对数组进行搜索会出现重复的组合,所以可以先对数组进行排序,然后每次从某个位置开始进行搜索。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |