当前为游客只读模式。登录后可提交代码判题并保存草稿与进度。
练题计划 · 力扣 HOT 100
组合总和
中等combinationSum()时间限制 2000 ms内存限制 128 MB复杂度要求 时间 O(2^t),空间 O(target)
组合总和
给你一个无重复元素的整数数组 candidates 和一个目标整数 target,找出 candidates 中可以使数字和为目标数 target 的所有不同组合,并以列表形式返回。可以按任意顺序返回这些组合。
candidates 中的同一个数字可以无限制重复被选取。如果至少一个数字的被选数量不同,则两种组合是不同的。
约定
- 数组中所有元素互不相同。
- 每个组合内部的数字按非降序排列。
- 组合之间顺序任意。
输入
candidates:无重复正整数数组,1 ≤ candidates.length ≤ 30,1 ≤ candidates[i] ≤ 200target:目标整数,1 ≤ target ≤ 500
输出
所有和为 target 的组合组成的二维数组。
示例一
输入:
candidates = [2,3,6,7], target = 7
输出:
[[2,2,3],[7]]
示例二
输入:
candidates = [2,3,5], target = 8
输出:
[[2,2,2,2],[2,3,3],[3,5]]
示例三
输入:
candidates = [2], target = 1
输出:
[]
复杂度要求
- 时间复杂度:
O(2^t),t为目标值相关的搜索树深度 - 空间复杂度:
O(target)
Loading...
输入
[[2,3,6,7],7]
预期输出
[[2,2,3],[7]]