int returnPermutations(string input, string output[]){
if(input.empty()){
output[0]="";
return 1;
}
int x=input.size()-1;
string temp;
int y;
int size=0;
int k=0;
for(int i=0 ; i<=x ; i++){
if(i!=0 && i==x){
temp=input.substr(0,x-1);
}
else if(i==0){
temp=input.substr(1,x);
}
else
{
temp=input.substr(0,i-1)+input.substr(i+1,x);
}
y=returnPermutations(temp,output);
for(int j=0 ; j<y ; j++,k++){
output[k]=input[i]+output[k];
size++;
}
}
return size;
}
Пример ввода-ab
Пример вывода-> Должен быть-> ab ba
Мой образец вывода-> b
Мы обязаны распечатать все перестановки для данной строки. Я не могу понять, в чем проблема в этом коде.