欢迎来到天天文库
浏览记录
ID:56984880
大小:68.50 KB
页数:2页
时间:2020-07-30
《关于全排列的非递归算法.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、#include#include#defineMAX100intcounter;voidpermutation(intn,charx[]){ inti,j,k,flag,flag1; chartemp; while(1) { flag=1; for(i=n-1;i>=1;i--)//找下一个全排列的字符串 if(x[i]>x[i-1]) { k=i; for(j=i+1;jx[i-1]) k=
2、j; temp=x[i-1]; x[i-1]=x[k]; x[k]=temp; flag=0; break; } if(flag)//判断全排列是否穷举完 return; k=i; flag=1; for(i=n-1;i>=k&&flag;i--) { flag=0; for(j=k;jx[j+1]) { temp=x[j]; x[j]=x[j+1]; x[j+1]=temp; flag=1;
3、 } } printf("%d:%s",++counter,x); }}intmain(void){ chardata[MAX]; intn; printf("pleaseenterastring:"); gets(data); n=strlen(data); printf("1:%s",data); counter=1; permutation(n,data); return0;}
此文档下载收益归作者所有