Wenn die Zeichen einer bestimmten Zeichenfolge in irgendeiner Form neu angeordnet werden, entsteht eine Anordnung der Zeichenfolge. In diesem Tutorial besprechen wir beispielsweise, wie alle Permutationen einer bestimmten Zeichenfolge mithilfe der Standardvorlagenbibliothek von C++ gedruckt werden.
Input : s = “ADT” Output : “ADT”, “ATD”, “DAT”, “DTA”, “TAD”, “TDA” Explanation : In the given output as you can see all the string are made up of same three character present in our string and are just rearranged thus they fit in the definition of a permutation of a string now there is one more thing to note these are all the permutations possible of string s.
Es gibt zwei Möglichkeiten, alle Permutationen einer bestimmten Zeichenfolge zu drucken. Rotate()
Beispiel: C++-Code für die obige Methode Die Zeichenfolge existiert. Wenn nicht, wird false zurückgegeben.
Beispiel
C++-Code für die obige Methode#includeusing namespace std; void permutations(string s, string ans){ if(s.size() == 0) { // when our string which needs to //be rotated becomes empty then it means //that our permutation is stored in ans cout << ans << "\n"; return ; } for(int i = 0; i < s.size(); i++){ permutations(s.substr(1), ans + s[0]); // we are adding the // first character in our ans // passing all elements from index 1 in our // rotate string for next function. rotate(s.begin(), s.begin()+1, s.end()); //rotating such that our second element becomes first } } int main(){ string s = "ADT"; // given string permutations(s, ""); return 0; }
ADT ATD DTA DAT TAD TDA
Im obigen Programm sortieren wir die Zeichenfolge und drucken dann mit Hilfe der Funktion next_permutation alle möglichen Permutationen aus.
Fazit
Das obige ist der detaillierte Inhalt vonImplementieren Sie die vollständige C++-Permutation einer bestimmten Zeichenfolge mithilfe von STL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!