从n个自然数中任取r个数的所有组合(递归算法)
编写一个递归算法,找出从自然数1,2,3,。。。,n中任取r个数的所有组合.
递归算法代码如下:
- #include
- using namespace std;
- int sum[100];
- void function(int m,int k)
- {
- int i,j;
- for(i=m; i>=k; i--)
- {
- a[k]=i;
- if(k>1)
- function(i-1,k-1);
- else
- {
- for(j=a[0]; j>0; j--)
- cout<"\t";
- cout<
- }
- }
- }
- int main()
- {
- int n,r;
- cout<<"请输入n和r的值:"<
- cin>>n>>r;
- if(r>n)
- cout<<"输入n和r的值错误!"<
- else
- {
- a[0]=r;
- function(n,r);
- }
- return 0;
- }
【从n个自然数中任取r个数的所有组合(递归算法)】转载于:https://blog.51cto.com/phonezeng/1109173
推荐阅读
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 一个小故事,我的思考。
- Docker应用:容器间通信与Mariadb数据库主从复制
- 一个人的碎碎念
- 猎杀IP
- 七年之痒之后
- 我从来不做坏事
- 喂,你结婚我给你随了个红包
- 异地恋中,逐渐适应一个人到底意味着什么()