LeetCode77. Combinations

来源:互联网 发布:淘宝怎么购买东西 编辑:程序博客网 时间:2024/06/06 01:58

题目链接:

https://leetcode.com/problems/combinations/

题目描述:

输出1~n的 k 个数字的所有排列组合。

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>> res;    vector<int> cmb;    void combine(int idx,int cnt,int k,int n){        if(cnt>k){            return;        }        else if(cnt==k){            res.push_back(cmb);        }        else{            for(int i=idx;i<=n;i++){                cmb.push_back(i);                combine(i+1,cnt+1,k,n);                cmb.pop_back();            }        }    }    vector<vector<int>> combine(int n, int k) {        combine(1,0,k,n);        return res;    }};
0 0
原创粉丝点击