生成一个整数集合的所有子集
2009-10-16 17:39
423 查看
void subset(int s[],int f[],int m,int n)
{
int i;
f[m] = 0; //标记该元素出现
if (m == n)
{ printf("{");
for(i = 0; i <= n; i++)
{
if (f[i] == 0) printf(" ");
else printf("%d ",s[i]);
}
printf("}/n");
}
else subset(s,f,m+1,n);
f[m] = 1; //标记该元素不出现
if (m == n)
{ printf("{");
for(i = 0; i <= n; i++)
{
if (f[i] == 0) printf(" ");
else printf("%d ",s[i]);
}
printf("}/n");
}
else subset(s,f,m+1,n);
}
void main()
{
int a[3] = {1,2,3},flag[3];
subset(a,flag,0,2);
}
{
int i;
f[m] = 0; //标记该元素出现
if (m == n)
{ printf("{");
for(i = 0; i <= n; i++)
{
if (f[i] == 0) printf(" ");
else printf("%d ",s[i]);
}
printf("}/n");
}
else subset(s,f,m+1,n);
f[m] = 1; //标记该元素不出现
if (m == n)
{ printf("{");
for(i = 0; i <= n; i++)
{
if (f[i] == 0) printf(" ");
else printf("%d ",s[i]);
}
printf("}/n");
}
else subset(s,f,m+1,n);
}
void main()
{
int a[3] = {1,2,3},flag[3];
subset(a,flag,0,2);
}
相关文章推荐
- 【数据结构】求一个整数集合的所有子集
- 给定一个集合和一个正整数c,判定是否存在该集合的子集,使其所有元素的和等于给定的正整数c?
- 生成一个集合的所有子集 Subset
- 给定一个可能包含重复的整数的集合,S返回所有可能的子集。
- 生成一个集合的所有子集 Subset
- 输出一个集合的幂集(所有子集)
- 输出一个集合的所有子集(算法)
- 【Java】通过位运算求一个集合的所有子集
- 求一个集合的所有子集
- 给出一个整数,判断集合中是否存在子集之和等于该整数?
- [置顶] 求一个集合的所有子集问题
- Java 通过位运算求一个集合的所有子集方法
- 创建一个ArrayList集合,先往集合中添加1....50 这50个整数后,再删除集合中的所有奇数。
- 算法作业:求一个集合中所有子集元素之和
- 输出一个集合的所有子集
- hdu 3217 Health(状压DP大水题->求一个集合的所有子集和的最大值)
- 输出一个集合的所有子集(算法)
- 给定一个集合,输出它的所有子集
- 怎么计算一个集合的幂集(所有子集形成的集合)的长度?涉及组合数学基础
- 求一个集合的所有子集