解题
- 剪枝,边界条件及重复逻辑
- 正确答案逻辑
- 递归及回溯
var combine = function(n, k) {
const res = [];
const dfs = (i, temp) => {
if (temp.length + (n - i + 1) < k) {
return;
}
if (temp.length == k) {
res.push(temp);
return;
}
dfs(i + 1, [...temp, i]);
dfs(i + 1, temp);
}
dfs(1, []);
return res;
};