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 <= 30
1 <= candidates[i] <= 200
candidate
中的每个元素都是独一无二的。1 <= target <= 500
解题思路#
深搜。直接对数组进行搜索会出现重复的组合,所以可以先对数组进行排序,然后每次从某个位置开始进行搜索。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|