将字符串abc进行全排列
#include "stdafx.h"
#include <vector>
#include <iostream>
using namespace std;
void cSwap(char* str,int m,int n)
{
char ch;
ch=str[m];
str[m]=str[n];
str[n]=ch;
return;
}
char mystr[]="abc";
void allSort(char* str)
{
if(*str=='\0')
{
cout<<mystr<<endl;
return;
}
else
{
for(int i=0;i<strlen(str);i++)
{
cSwap(str,0,i); //递归程序考虑局部即可
allSort(str+1);
cSwap(str,0,i);
}
}
return;
}
int main(void)
{
allSort(mystr);
system("pause");
return 0;
}