[leetcode] 77. Combinations

网友投稿 883 2022-10-01

[leetcode] 77. Combinations

[leetcode] 77. Combinations

Description

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

Example:

Input: n = 4, k = 2Output:[ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4],]

分析

题目的意思是:给定数字n和k,给出所有的k项的组合数。

这道题的核心是递归,弄明白递归的终止条件和递归条件就行了,由于比较简单,就直接看代码了。

代码

class Solution {public: vector> combine(int n, int k) { vector> res; vector out; solve(res,out,n,k,1); return res; } void solve(vector>& res,vector out,int n,int k,int start){ if(k==0||start>n){ if(k==0) res.push_back(out); return; } for(int i=start;i<=n;i++){ out.push_back(i); solve(res,out,n,k-1,i+1); out.pop_back(); } }};

参考文献

​​手把手教你中的回溯算法——多一点套路​​​​[编程题]combinations​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python3:AttributeError: module 'urllib' has no attribute 'quote'
下一篇:SpringBoot自定义注解开发指南
相关文章

 发表评论

暂时没有评论,来抢沙发吧~