LeetCode: Combinations

来源:互联网 发布:易推客营销软件下载 编辑:程序博客网 时间:2024/05/31 19:50

Given two integers n and k, return all possible combinations of k numbers out of 1 ... n.

For example,
If n = 4 and k = 2, a solution is:

[  [2,4],  [3,4],  [2,3],  [1,2],  [1,3],  [1,4],]
class Solution {public:    vector<vector<int> > combine(int n, int k) {        if(n == 0 || k == 0)            return result;        vector<int> cur;        dfs(1, n, k, cur);        return result;            }private:    vector<vector<int> > result;    void dfs(int start, int n, int k, vector<int> &cur)    {        if(cur.size() == k)        {            result.push_back(cur);            return;        }        for(int i = start; i <= n; i++)        {            cur.push_back(i);            dfs(i+1, n, k, cur);            cur.pop_back();        }            }};





0 0
原创粉丝点击