class Solution {
public:
//定义全局变量
vector<int> path;
vector<vector<int>> ans;
void backTracking(int n, int k,int startIndex) {
//终止条件
if(path.size() == k) {
ans.push_back(path);
return;
}
//单层循环的过程
//进行剪枝op
//至多从...开始
int limit = n-k+path.size()+1;
for (int i = startIndex; i <= limit; i++){
path.push_back(i);
backTracking(n, k, i+1);
//回溯
path.pop_back();
}
}
vector<vector<int>> combine(int n, int k) {
backTracking(n, k, 1);
return ans;
}
};
leetcode打卡#day27 77. 组合
最新推荐文章于 2024-09-15 15:43:59 发布