【题目】77. 组合
【题目考察】:回溯法
【解法】:
/**
* @param {number} n
* @param {number} k
* @return {number[][]}
*/
var combine = function(n, k) {
const result = [];
const path = [];
const backtracking = (n, k, startIndex) => {
if (path.length === k) {
result.push([...path]);
return;
}
for(let i = startIndex; i <= n - (k - path.length) + 1; i++) {
path.push(i);
backtracking(n, k, i + 1);
path.pop();
}
}
backtracking(n, k ,1)
return result
};