Я ищу только печать Уникальная перестановка. Функция, которая должна принимать одну строку в качестве входных данных и распечатывать уникальные перестановки (без повторения) этой строки в лексикографическом (в алфавитном порядке) порядке.Печать Уникальная перестановка в C++
это то, что у меня есть до сих пор, но когда я запустил, это дало мне ошибку. Я думаю, что мои параметры в printPermutations не соответствуют основной функции, но я не могу изменить основную функцию, потому что она была дана для проверки кода.
void printPermutations(string word, int currentIndex, int wordSize){
if(currentIndex == wordSize){
cout << word << endl;
return;
}
else{
for (int j = currentIndex; j = wordSize; j++){
swap(word[currentIndex], word[j]);
printPermutations(word, currentIndex +1, wordSize);
swap(word[currentIndex], word[j]);
}
}
}
int main(int argc, char* argv[]){
string word = "abcd";
printPermutations(argv[1]);
return 0;
}
И ...........? –
Если вы ищете, как печатать все перестановки, для этого требуется 3 строки кода на C++. – PaulMcKenzie
Я ищу только печать Уникальная перестановка. Функция, которая должна принимать одну строку в качестве входных данных и распечатывать уникальные перестановки (без повторения) этой строки в лексикографическом (в алфавитном порядке) порядке. –