对“”abc“”进行全排列。
代码如下:
#include<iostream>
#include<stdio.h>
using namespace std;
void quanP(string a,int k){
if(k == a.length()){
for(int i = 0;i < a.length();i++)
printf("%c ",a[i]);
printf("\n");
}
for(int i = k;i < a.length();i++){
{
char temp = a[i];
a[i] = a[k];
a[k] = temp;
}//试探
quanP(a , k+1);
{
char temp = a[i];
a[i] = a[k];
a[k] = temp;
}//回溯
}
}
int main(){
string data = "abc";
quanP(data , 0);
return 0;
}