Heim >Backend-Entwicklung >C++ >Ändern Sie eine Zeichenfolge, indem Sie Vokale entsprechend ihrer Indexposition in der Zeichenfolge neu anordnen
In diesem Artikel besprechen wir, wie man eine bestimmte Zeichenfolge in C++ ändert, indem man Vokale alphabetisch an ihren jeweiligen Indizes neu anordnet. Außerdem erläutern wir die Methoden zur Lösung dieses Problems und stellen Beispiele mit Testfällen bereit.
Ordnen Sie bei einer vorgegebenen Zeichenfolge die Vokale an ihren jeweiligen Indizes in alphabetischer Reihenfolge neu an. Die Konsonanten in der Zeichenfolge sollten ihre ursprüngliche Reihenfolge beibehalten. Bei gegebener Zeichenfolge „tutorialspoint“ sollte die Ausgabe beispielsweise „tatiriolspount“ lauten.
Dieses Problem kann mit einem einfachen Algorithmus gelöst werden. Wir können zunächst eine separate Zeichenfolge erstellen, die alle Vokale in der angegebenen Zeichenfolge in ihrer jeweiligen Reihenfolge enthält. Wir können diese Zeichenfolge dann alphabetisch sortieren. Schließlich können wir die Vokale in der ursprünglichen Zeichenfolge durch die Vokale an ihren jeweiligen Indizes in der sortierten Zeichenfolge ersetzen.
Sehen wir uns den schrittweisen Ansatz im C++-Code an -
#include <iostream> #include <string> #include <algorithm> using namespace std; string modifyString(string str) { string vowels = ""; string result = ""; // Extract vowels from the string for(int i = 0; i < str.length(); i++) { if(str[i] == 'a' || str[i] == 'e' || str[i] == 'i' || str[i] == 'o' || str[i] == 'u') { vowels += str[i]; } } // Sort the vowels in alphabetical order sort(vowels.begin(), vowels.end()); // Replace the vowels in the original string with sorted vowels int vowelIndex = 0; for(int i = 0; i < str.length(); i++) { if(str[i] == 'a' || str[i] == 'e' || str[i] == 'i' || str[i] == 'o' || str[i] == 'u') { result += vowels[vowelIndex]; vowelIndex++; } else { result += str[i]; } } return result; } int main() { string str = "tutorialspoint"; cout << modifyString(str) << endl; return 0; }
tatiriolspount
Lass uns den Code mit einigen zusätzlichen Beispielen testen:
Beispiel 1
Input: "quick brown fox jumps over the lazy dog" Output: "qaeck brewn fix jomps ovor tho luzy dug"
Beispiel 2
Input: "the quick brown fox" Output: "the qiock brown fux"
In beiden Beispielen werden die Vokale alphabetisch an ihren jeweiligen Indizes neu angeordnet, während die Konsonanten ihre ursprüngliche Reihenfolge beibehalten.
Zusammenfassend haben wir besprochen, wie man eine bestimmte Zeichenfolge in C++ ändert, indem man die Vokale alphabetisch an ihren jeweiligen Indizes neu anordnet. Wir erklären auch den Ansatz zur Lösung dieses Problems und stellen Arbeitscode mit Beispielen zur Verfügung. Mithilfe der in diesem Artikel erwähnten Methoden können wir ähnliche Probleme leicht lösen und die Zeichenfolge gemäß unseren Anforderungen ändern.
Das obige ist der detaillierte Inhalt vonÄndern Sie eine Zeichenfolge, indem Sie Vokale entsprechend ihrer Indexposition in der Zeichenfolge neu anordnen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!