#include<iostream>
using namespace std;
void print(int *a,int k,int m)
{
int i;
if(k==m){
for(i=0;i<m;i++)
cout<<a[i];
cout<<endl;
}
else
{
for(i=k;i<m;i++)
{
swap(a[i],a[k]);//此调用c++的函数,若为C语言只需再写一条交换函数
print(a,k+1,m);
swap(a[i],a[k]);
}
}
}
int main()
{
int N;
cin>>N;
int *a=new int[N];
for(int i=0;i<N;i++)
cin>>a[i];
print(a,0,N);
return 0;
}
C语言全排列算法
最新推荐文章于 2022-09-27 17:23:55 发布