其实这个东西还是比较简单啦,但是有一些很妙妙的方法,因为博主今天没有时间,所以以后再做介绍。
先介绍最基本的方法。
增量构造法
一次选出一个元素放入集合中:
代码如下:
#include<bits/stdc++.h>
using namespace std;
int a[10000];
void p_search(int v,int n)
{
if(v!=1)
{
for(int i=1;i<v;++i)
{
cout<<a[i]<<" ";
}
cout<<endl;
}
for(int i=a[v-1]+1;i<=n;++i)
{
a[v]=i;
p_search(v+1,n);
}
}
int main()
{
int n;
cin>>n;
p_search(1,n);
//cout<<p_search(n);
}