[Leetcode]Combinations

来源:互联网 发布:广州网络推广 编辑:程序博客网 时间:2024/06/05 23:49

Given two integers n and k, return all possible combinations ofk 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:    /*algorithm: dfs        */    void dfs(vector<vector<int>>&result,vector<int>&path,int start,int n,int k){        if(path.size() == k){            result.push_back(path);            return;        }        for(int i = start;i <= n;i++){            path.push_back(i);            dfs(result,path,i + 1,n,k);            path.pop_back();        }    }    vector<vector<int>> combine(int n, int k) {        vector<vector<int>>result;        vector<int>path;        dfs(result,path,1,n,k);        return result;    }};


0 0
原创粉丝点击