Algorithm Gossip: m元素集合的n个元素子集

来源:互联网 发布:数据库系统概念中文版 编辑:程序博客网 时间:2024/05/16 06:59
/**************************************** *  File Name  : arithmetic.c *  Creat Data : 2015.2.4*  Author     : ZY *****************************************/ /*Algorithm Gossip: m元素集合的n个元素子集*/#include <stdio.h>#define MAX 20int main(void){int set[MAX];int m ,n ,position;int i;printf("输入集合的个数m:");scanf("%d",&m);printf("输入取出元素n:");scanf("%d",&n);for(i = 0;i < n;i++){set[i] = i+1;}//显示第一个集合printf("{");for(i = 0;i < n;i++){printf("%2d",set[i]);}printf("}\n");position = n-1;while(1){if(set[n-1] == m){position--;}else{position = n-1;}set[position]++;        //调整右边元素for(i = position+1;i < n;i++){set[i] = set[i-1]+1;}printf("{");for(i = 0;i < n;i++){printf("%2d",set[i]);}printf("}\n");if(set[0] >= m-n+1){break;}}return 0;}

0 0
原创粉丝点击