求集合的子集

来源:互联网 发布:大数据公司排名北京 编辑:程序博客网 时间:2024/05/22 05:22

利用递归算法

#include <iostream>#include<string>using namespace std;void  trail(string[],int[],int,int);int main(){ int n,k=0; cout<<"Please enter the number of the element :"; cin>>n; string a[100]; int b[100]={0}; for (int i=0;i<n;i++) {  cout<<"Please enter NO."<<i+1<<" element :";  cin>>a[i]; } cout<<"All of the subset is:"<<endl; trail(a,b,0,n); return 0; }void trail(string a[],int b[],int k,int n){ int j; if (k<n) {  trail(a,b,k+1,n);  b[k]=1-b[k];  trail(a,b,k+1,n); } else {  cout<<"{";  for (j=0;j<=n;j++)  {   if (b[j])   {    cout<<a[j]<<" ";   }  }  cout<<"} "; } } 


0 0