#include <leetcode.h>
|
static vector< vector< int > > | combinationSum2 (vector< int > &candidates, int target) |
|
static vector< vector< int > > | recurse (vector< int > &candidates, int target, int index) |
|
◆ combinationSum2()
vector< vector< int > > leetcode::combination_sum_ii::Solution::combinationSum2 |
( |
vector< int > & |
candidates, |
|
|
int |
target |
|
) |
| |
|
static |
在文件 leetcode.cpp 第 6486 行定义.
6487 sort(candidates.begin(), candidates.end());
6488 const auto ret =
recurse(candidates, target, -10);
6489 vector<vector<int>> ans(ret.size());
6490 for(
int i = 0; i < ret.size(); i++) {
6491 ans[i] = vector<int>(ret[i].size());
6492 for(
int j = 0; j < ret[i].size(); j++) {
6493 ans[i][j] = candidates[ret[i][j]];
static vector< vector< int > > recurse(vector< int > &candidates, int target, int index)
引用了 recurse().
◆ recurse()
vector< vector< int > > leetcode::combination_sum_ii::Solution::recurse |
( |
vector< int > & |
candidates, |
|
|
int |
target, |
|
|
int |
index |
|
) |
| |
|
static |
在文件 leetcode.cpp 第 6499 行定义.
6500 vector<vector<int>> ans;
6501 for(
int i = max(0, index + 1); i < candidates.size(); i++) {
6502 if(!(i > 0 && candidates[i] == candidates[i - 1] && index != i - 1)) {
6503 const auto &candidate = candidates[i];
6504 if(candidate == target) {
6505 ans.emplace_back(vector(1, i));
6506 }
else if(target - candidate >= 1) {
6507 auto res =
recurse(candidates, target - candidate, i);
6508 for(
auto &
vec: res) {
引用了 recurse() , 以及 pat::a::a7_2::vec.
被这些函数引用 combinationSum2() , 以及 recurse().
该类的文档由以下文件生成: