一句话理解
组合搜索:选出的集合与顺序无关。
为什么要学
从 n 个里选 k 个。
讲解
通过“下一个只能选更大的编号”避免重复排列。dfs(start, cnt)。
例子
选 3 个数,第一个选了 2,后面只能从 3..n 选,不会出现 2,1,…
常见错误
- 按排列搜再去重,浪费 n!。
- k 和 n 搞反。
第 232 课
组合搜索:选出的集合与顺序无关。
从 n 个里选 k 个。
通过“下一个只能选更大的编号”避免重复排列。dfs(start, cnt)。
选 3 个数,第一个选了 2,后面只能从 3..n 选,不会出现 2,1,…
组合搜索常用“只选更大编号”来去重。
左右方向键也可翻课