LeetCode 077 Combinations

来源:互联网 发布:软件配置管理工具 编辑:程序博客网 时间:2024/05/01 21:30

给你一个范围1-n,然后从中选k个数,有多少种组合。

直接用递归。

class Solution {public:    void dfs(int step,int kk,int nn,int limit,vector<int>temp,vector<vector<int>>&ans){        if(step==kk){ans.push_back(temp);return ;}        for(int ii=1;ii<=nn;ii++){            if(ii<=limit)continue;            if(step+1>temp.size())temp.push_back(ii);            else temp[step]=ii;            dfs(step+1,kk,nn,ii,temp,ans);        }    }    vector<vector<int>> combine(int n, int k) {        vector<vector<int>>ans;        vector<int>temp;        dfs(0,k,n,0,temp,ans);        return ans;    }};


0 0
原创粉丝点击