组合:元素不重复不可复选

77. 组合

目录

1. 题目

|616

给你输入一个数组 nums = [1,2..,n] 和一个正整数 k,请你生成所有大小为 k 的子集

2. 思路

图片&文件

2.1. 思路 1:

2.2. 思路 2:

  • 要点
    • start0 开始,方便处理
    • if (track.length === k) {
var combine = function (n, k) {
  let res = [];
  function backtrack(track, start) {
    if (track.length === k) {
      res.push([...track]);
      return;
    }
    for (let i = start; i <= n; i++) {
      track.push(i);
      backtrack(track, i + 1);
      track.pop();
    }
  }

  backtrack([], 1);

  return res;
};

3. 请问

回溯算法的剪枝逻辑一般放到那儿?

和这题没关系,突然想到的