字典顺序输出12345,
结果就是12345,12354,12435……54321,此为字典顺序,我用递归实现,和八皇后问题类似,代码和结果如下
#include <iostream>
using namespace std;
int tmp[5];
int done[5];
void digui(int a[],int n){
if(n>4){
for(int i=0;i<5;i++)
cout<<tmp[i]<<" ";
cout<<endl;
}else{
for(int i=0;i<5;i++){
tmp[n]=a[i];
if(done[i]==0){
done[i]=1;
digui(a,n+1);
done[i]=0;
}
}
}
}
int main(){
int a[5]={1,2,3,4,5};
for(int i=0;i<5;i++){
tmp[i]=0;
done[i]=0;
}
digui(a,0);
return 0;
}
如有问题,还望提出