#152 Combinations
来源:互联网 发布:朋克乐队 知乎 编辑:程序博客网 时间:2024/04/28 01:05
题目描述:
Given two integers n and k, return all possible combinations of k numbers out of 1 ... n.
Example
题目思路:For example,
If n = 4 and k = 2, a solution is:
[[2,4],[3,4],[2,3],[1,2],[1,3],[1,4]]
这题我就用recursion做了,每次都挑一个数放入vector sofar中,看看是不是符合要求,如果符合要求就塞到ans中。
Mycode(AC = 16ms):
class Solution {public: /** * @param n: Given the range of numbers * @param k: Given the numbers of combinations * @return: All the combinations of k numbers out of 1..n */ vector<vector<int> > combine(int n, int k) { // write your code here vector<vector<int>> ans; if (k == 0) return ans; vector<int> sofar; combine(ans, sofar, n, k, 1); return ans; } void combine(vector<vector<int>>& ans, vector<int>& sofar, int n, int k, int start) { if (k == 0) { ans.push_back(sofar); return; } for (int i = start; i <= n; i++) { sofar.push_back(i); combine(ans, sofar, n, k - 1, i + 1); sofar.pop_back(); } }};
0 0
- #152 Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- Combinations
- combinations
- Combinations
- Combinations
- Combinations
- The longest absolute path in file system
- Android中常见的方法图。
- 大数据组件服务的启动与关闭命令
- ZooKeeper-3.3.4集群安装配置
- bootStrap 日历插件的简单使用
- #152 Combinations
- 浅谈jQuery.extend()和jQuery.fn.extend()
- mysqldump 只导出存储过程
- Mac生成ssh key
- 面试中,关于项目怎么做的回答
- SSH框架整合的一些步骤整理(二)
- SQLite
- Git 如何删除本地分支和远程分支
- 3D变化——旋转的立方体