Inhaltsverzeichnis
Algorithmus
Beispiel
Ausgabe
Fazit
Heim Backend-Entwicklung C++ Ersetzen Sie mit einem C++-Programm alle Konsonanten in der Zeichenfolge durch den nächsten Vokal

Ersetzen Sie mit einem C++-Programm alle Konsonanten in der Zeichenfolge durch den nächsten Vokal

Sep 11, 2023 am 10:17 AM
字符串 c程序 替换

Ersetzen Sie mit einem C++-Programm alle Konsonanten in der Zeichenfolge durch den nächsten Vokal

Diese Methode zielt darauf ab, eine Folge von Konsonanten durch die nächsten Vokale im Alphabet (auch als lateinische Kleinbuchstaben bezeichnet) zu ersetzen. Wenn zwei Vokale gleich nahe beieinander liegen, können wir sie durch den ersten Vokal in diesen Buchstaben ersetzen.

Schauen wir uns einige Eingabeszenarien an -

Angenommen, wir haben eine Zeichenfolge wie „ebgkjasjd“, jetzt müssen wir alle Vorkommen von Konsonanten in der Zeichenfolge durch die nächsten Vokale ersetzen.

Input = "ebgkjasjd";
Result =
ebgkjasjd
eaeiiauie
Nach dem Login kopieren

Ersetzen Sie das Element „b“ durch „a“, da es der nächste Vokal ist. Wir hätten das Element „g“ durch „e“ oder „i“ ersetzen können, da beide gleich aktuell sind, aber wir entscheiden uns dafür, es durch „e“ zu ersetzen, da es zuerst kam. Das Gleiche gilt für alle anderen Elemente in der Zeichenfolge.

Angenommen, die Eingabezeichenfolge enthält beispielsweise keine Vokale, betrachten Sie eine Zeichenfolge: „sdfhgtykl“, die resultierende Ausgabe ist -

Input = "sdfhgtykl";
Result =
sdfhgtykl
ueeieuuii
Nach dem Login kopieren

Für das erste Element „s“ kommt der Vokal „u“ am nächsten, also ersetzen Sie „s“ durch „u“. Wie alle anderen Elemente im Array sind sie Konsonanten. Diese Situation ergibt auch die Worst-Case-Komplexität der Methode.

Algorithmus

  • Durchlaufen Sie die Eingabezeichenfolge ausgehend vom Startindex.

  • Wenn ein Konsonant angetroffen wird, wird die Anzahl der Buchstaben von diesem Konsonanten bis zu den beiden nächsten Vokalen links und rechts gezählt. Wählen Sie Vokale mit weniger Buchstaben.

  • Dieser Vorgang wird wiederholt, bis alle Konsonanten in der Zeichenfolge durchlaufen wurden.

  • Die erhaltene Ausgabe ist die ersetzte Zeichenfolge.

Beispiel

Der folgende Code ist in C++ implementiert, um alle Konsonanten in einer Zeichenfolge durch die nächsten Vokale im Alphabet zu ersetzen -

#include <iostream>
using namespace std;
void solve(string& s) {
   for(char &ch : s) {
      if(ch>'a' && ch<'e') {
         if(ch-'a' <= 'e'-ch) ch='a';
         else ch='e';
      } else if(ch>'e' && ch<'i') {
         if(ch-'e' <= 'i'-ch) ch='e';
         else ch='i';
      } else if(ch>'i' && ch<'o') {
         if(ch-'i' <= 'o'-ch) ch='i';
         else ch='o';
      } else if(ch>'o' && ch<'u') {
         if(ch-'o' <= 'u'-ch) ch='o';
         else ch='u';
      } else if(ch>'u') {
         ch = 'u';
      }
   }
}
int main() {
   string s = "ibgshzjbsh";
   cout << s << "\n";
   solve(s);
   cout << s;
   return 0;
}
Nach dem Login kopieren

Ausgabe

“ibgshzjbsh”
“iaeuiuiaui”
Nach dem Login kopieren

Beispiel

Ein besserer Ansatz besteht jedoch darin, ein Array zu verwenden und für jedes Zeichen die Antwort mit dem nächsten Zeichen zu speichern, anstatt viele Wenn-Sonst-Bedingungen zu verwenden.

#include <iostream>
#include <vector>
using namespace std;
string solve(string s) {
   string hash = "aaaeeeeiiiiioooooouuuuuuuu";
   for (int i=0;i<s.size();i++) {
      s[i] = hash[s[i]-'a'];
   }
   return s;
}
int main() {
   string s = "ibgshzjbsh";
   cout << solve(s);
   return 0;
}
Nach dem Login kopieren

Ausgabe

iaeuiuiaui
Nach dem Login kopieren

Fazit

Wir können ein Element ersetzen, indem wir es finden und durch das nächstgelegene Zeichen ersetzen. Die zeitliche Komplexität des Durchlaufens einer Zeichenfolge beträgt O(n). Die zweite Methode ist einfacher zu verstehen und zu programmieren und weniger umständlich. Die zeitliche Komplexität beträgt ebenfalls O(n), da wir die Zeichenfolge nur einmal durchlaufen.

Das obige ist der detaillierte Inhalt vonErsetzen Sie mit einem C++-Programm alle Konsonanten in der Zeichenfolge durch den nächsten Vokal. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Detaillierte Erläuterung der Methode zum Konvertieren des Typs „int' in „string' in PHP Detaillierte Erläuterung der Methode zum Konvertieren des Typs „int' in „string' in PHP Mar 26, 2024 am 11:45 AM

Ausführliche Erläuterung der Methode zum Konvertieren des Typs int in einen String in PHP. Bei der PHP-Entwicklung stoßen wir häufig auf die Notwendigkeit, den Typ int in einen String-Typ zu konvertieren. Diese Konvertierung kann auf verschiedene Weise erreicht werden. In diesem Artikel werden verschiedene gängige Methoden im Detail vorgestellt, mit spezifischen Codebeispielen, um den Lesern das Verständnis zu erleichtern. 1. Verwenden Sie die integrierte Funktion strval() von PHP. PHP bietet eine integrierte Funktion strval(), die Variablen verschiedener Typen in String-Typen konvertieren kann. Wenn wir den Typ int in den Typ string konvertieren müssen,

So wiederholen Sie eine Zeichenfolge in Python_Tutorial zum Wiederholen von Zeichenfolgen in Python So wiederholen Sie eine Zeichenfolge in Python_Tutorial zum Wiederholen von Zeichenfolgen in Python Apr 02, 2024 pm 03:58 PM

1. Öffnen Sie zuerst Pycharm und rufen Sie die Pycharm-Homepage auf. 2. Erstellen Sie dann ein neues Python-Skript, klicken Sie mit der rechten Maustaste – klicken Sie auf „Neu“ – klicken Sie auf „Pythondatei“. 3. Geben Sie eine Zeichenfolge ein, Code: s="-". 4. Dann müssen Sie die Symbole in der Zeichenfolge 20 Mal wiederholen, Code: s1=s*20 5. Geben Sie den Druckausgabecode ein, Code: print(s1). 6. Führen Sie abschließend das Skript aus und Sie sehen unten unseren Rückgabewert: - 20 Mal wiederholt.

Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt? Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt? Mar 12, 2024 pm 09:42 PM

Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt? Beim Programmieren in Golang kommt es häufig vor, dass Sie prüfen müssen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt. Um diese Anforderung zu erfüllen, können wir die vom Strings-Paket in Golang bereitgestellten Funktionen verwenden, um dies zu erreichen. Als Nächstes stellen wir anhand spezifischer Codebeispiele ausführlich vor, wie Sie mit Golang überprüfen können, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt. In Golang können wir HasPrefix aus dem Strings-Paket verwenden

So ermitteln Sie, ob eine Golang-Zeichenfolge mit einem bestimmten Zeichen endet So ermitteln Sie, ob eine Golang-Zeichenfolge mit einem bestimmten Zeichen endet Mar 12, 2024 pm 04:48 PM

Titel: So ermitteln Sie, ob eine Zeichenfolge in Golang mit einem bestimmten Zeichen endet. In der Go-Sprache müssen wir manchmal feststellen, ob eine Zeichenfolge mit einem bestimmten Zeichen endet. In diesem Artikel wird erläutert, wie Sie diese Funktion mithilfe der Go-Sprache implementieren, und es werden Codebeispiele als Referenz bereitgestellt. Schauen wir uns zunächst an, wie Sie in Golang feststellen können, ob eine Zeichenfolge mit einem bestimmten Zeichen endet. Die Zeichen in einer Zeichenfolge in Golang können durch Indizierung ermittelt werden, und die Länge der Zeichenfolge kann ermittelt werden

So lösen Sie das Problem verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP So lösen Sie das Problem verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP Mar 04, 2024 am 09:36 AM

Methoden zur Lösung des Problems verstümmelter chinesischer Zeichen beim Konvertieren von Hexadezimalzeichenfolgen in PHP. Bei der PHP-Programmierung stoßen wir manchmal auf Situationen, in denen wir Hexadezimalzeichenfolgen in normale chinesische Zeichen konvertieren müssen. Bei dieser Konvertierung treten jedoch manchmal Probleme mit verstümmelten chinesischen Zeichen auf. In diesem Artikel finden Sie eine Methode zur Lösung des Problems verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP sowie spezifische Codebeispiele. Verwenden Sie die Funktion hex2bin() für die Hexadezimalkonvertierung. Die in PHP integrierte Funktion hex2bin() kann 1 konvertieren

So fangen Sie eine Zeichenfolge in der Go-Sprache ab So fangen Sie eine Zeichenfolge in der Go-Sprache ab Mar 13, 2024 am 08:33 AM

Die Go-Sprache ist eine leistungsstarke und flexible Programmiersprache, die umfangreiche Funktionen zur Zeichenfolgenverarbeitung bietet, einschließlich des Abfangens von Zeichenfolgen. In der Go-Sprache können wir Slices verwenden, um Zeichenfolgen abzufangen. Als Nächstes stellen wir anhand spezifischer Codebeispiele ausführlich vor, wie Zeichenfolgen in der Go-Sprache abgefangen werden. 1. Verwenden Sie Slicing, um eine Zeichenfolge abzufangen. In der Go-Sprache können Sie Slicing-Ausdrücke verwenden, um einen Teil einer Zeichenfolge abzufangen. Die Syntax des Slice-Ausdrucks lautet wie folgt: Slice:=str[Start:End]wo, s

PHP-String-Manipulation: eine praktische Möglichkeit, Leerzeichen effektiv zu entfernen PHP-String-Manipulation: eine praktische Möglichkeit, Leerzeichen effektiv zu entfernen Mar 24, 2024 am 11:45 AM

PHP-String-Operation: Eine praktische Methode zum effektiven Entfernen von Leerzeichen Bei der PHP-Entwicklung kommt es häufig vor, dass Sie Leerzeichen aus einem String entfernen müssen. Das Entfernen von Leerzeichen kann die Zeichenfolge sauberer machen und die nachfolgende Datenverarbeitung und -anzeige erleichtern. In diesem Artikel werden mehrere effektive und praktische Methoden zum Entfernen von Leerzeichen vorgestellt und spezifische Codebeispiele angehängt. Methode 1: Verwenden Sie die in PHP integrierte Funktion trim(). Die in PHP integrierte Funktion trim() kann Leerzeichen an beiden Enden der Zeichenfolge entfernen (einschließlich Leerzeichen, Tabulatoren, Zeilenumbrüche usw.), was sehr praktisch und einfach ist benutzen.

PHP-String-Operation: Tipps zur Implementierung zusätzlicher Kommas und Beibehaltung nur von Kommas PHP-String-Operation: Tipps zur Implementierung zusätzlicher Kommas und Beibehaltung nur von Kommas Mar 28, 2024 pm 03:02 PM

PHP-String-Operation: Entfernen Sie zusätzliche Kommas und behalten Sie nur Kommas bei. Implementierungstipps In der PHP-Entwicklung ist die String-Verarbeitung eine sehr häufige Anforderung. Manchmal müssen wir die Zeichenfolge verarbeiten, um zusätzliche Kommas zu entfernen und die einzigen Kommas beizubehalten. In diesem Artikel stelle ich eine Implementierungstechnik vor und stelle konkrete Codebeispiele bereit. Schauen wir uns zunächst eine allgemeine Anforderung an: Angenommen, wir haben eine Zeichenfolge, die mehrere Kommas enthält, und wir müssen die zusätzlichen Kommas entfernen und nur das eindeutige Komma beibehalten. Ersetzen Sie beispielsweise „apple,ba

See all articles