算法学习——求子集算法

来源:互联网 发布:scada数据库 编辑:程序博客网 时间:2024/05/21 14:04

即依次为前面的位赋0和赋1.


//其中参数n为集合包含元素数目,为全局变量,外部定义,数组a[n]也为全局变量,记录0和1
void subsets(int i)//
{

    if(i==1)//如果是集合中最后一个元素
    {
        a[i]=0;//最后一个元素为9
        for(int j=01;j<=n;++j)
            cout<<a[j]<<" ";
cout<<endl;
        a[i]=1;
        for(int j=1;j<=n;++j)
            cout<<a[j]<<" ";
cout<<endl;
return;
    }
    a[i]=0;
    subsets(i-1);

    a[i]=1;
    subsets(i-1);
}
0 0