77. 组合
class Solution {
List<List<Integer>> ans = new ArrayList<>();
public List<List<Integer>> combine(int n, int k) {
backtrack(n, k, new ArrayList<>(), 1);
return ans;
}
private void backtrack(int n, int k, List<Integer> list, int index) {
if(list.size() == k) {
ans.add(new ArrayList<>(list));
return;
}
for(int i = index; i <= n-k+list.size()+1; ++i) {
list.add(i);
backtrack(n, k, list, i + 1);
list.remove(list.size() - 1);
}
}
}