一个全排列的算法!

来源:互联网 发布:小米彻底删除双开数据 编辑:程序博客网 时间:2024/05/16 23:44
#include <stdio.h>
void permutation(char a[], int m, int n)
{
int i;
char t;
if (m<n-1) {
permutation(a, m+1, n);
for (i=m+1;i<n;i++) {
t=a[m]; a[m]=a[i]; a[i]=t;
permutation(a, m+1, n);
t=a[m]; a[m]=a[i]; a[i]=t;
}
} else
{
 printf("%s/n", a);
}
}
int main() {
char a[]="ABCDE";
permutation(a, 0,5);
return 0;
}