Inhaltsverzeichnis
Beispiel Beispiel
Anleitung
Methode 2
Algorithmus
Beispiel
Ausgabe
Heim Backend-Entwicklung C++ Ändert eine Zeichenfolge, indem alle Vorkommen eines bestimmten Zeichens durch ein angegebenes Ersatzzeichen ersetzt werden

Ändert eine Zeichenfolge, indem alle Vorkommen eines bestimmten Zeichens durch ein angegebenes Ersatzzeichen ersetzt werden

Sep 08, 2023 am 10:17 AM
字符替换 替换字符 String-Änderung

Ändert eine Zeichenfolge, indem alle Vorkommen eines bestimmten Zeichens durch ein angegebenes Ersatzzeichen ersetzt werden

In diesem Problem müssen wir die Zeichen einer bestimmten Zeichenfolge basierend auf den angegebenen Zeichen im Array von Zeichenpaaren ersetzen. Wir werden zwei verschiedene Lösungen diskutieren. Bei der ersten Methode ersetzen wir jedes Zeichen, indem wir die Zeichen und Zeichenpaare der angegebenen Zeichenfolge durchlaufen.

Bei der zweiten Methode verwenden wir ein Array der Länge 26, um die jedem Zeichen zugeordneten Ersatzzeichen zu speichern und die Zeichen der angegebenen Zeichenfolge zu ändern.

Problemstellung − Wir erhalten eine Zeichenfolge str mit N Kleinbuchstaben. Außerdem erhalten wir ein Array mit Zeichenpaaren. Wir müssen die Zeichen „pairs[i][0]“ in der angegebenen Zeichenfolge durch „pairs[i][1]“ ersetzen.

Beispiel Beispiel

Input –  str = "xyz", pairs = {{'x', 'a'}, {'y', 'b'},, {'z', 'c'}}
Nach dem Login kopieren
Output – ‘abc’
Nach dem Login kopieren

Anleitung

Hier wird „x“ durch „a“, „y“ durch „b“ und „z“ durch „c“ ersetzt.

Input – str = "abderb", pairs = {{'a', 'e'}, {'b', 't'}, {'e', 'f'}, {'r', 's'}}
Nach dem Login kopieren
Output – ‘etdfst’
Nach dem Login kopieren

Anleitung

In einer Zeichenfolge wird „a“ durch „e“, „b“ durch „t“, „e“ durch „f“ und „r“ durch „s“ ersetzt.

Methode 1

Bei dieser Methode durchlaufen wir jedes Zeichenpaar und ersetzen die übereinstimmenden Zeichen in der angegebenen Zeichenfolge. Wir benötigen zwei verschachtelte Schleifen, um für jede Schleife die Zeichenfolge zu durchlaufen.

Algorithmus

  • Schritt 1 – Speichern Sie die Größe der Zeichenfolge in der Variablen „N“ und das Array in der Variablen „M“.

  • Schritt 2 – Speichern Sie eine Kopie der Zeichenfolge in der Variablen „temp“.

  • Schritt 3 – Verwenden Sie eine for-Schleife, um die Liste der Paare zu durchlaufen.

  • Schritt 4 − Speichern Sie in der Schleife das erste Zeichen in der Variablen „a“ und das zweite Zeichen in der Variablen „b“.

  • Schritt 5 – Mit verschachtelten Schleifen über die Zeichenfolge iterieren.

  • Schritt 6 - Wenn in der verschachtelten Schleife das aktuelle Zeichen der angegebenen Zeichenfolge gleich „a“ ist, ersetzen Sie das aktuelle Zeichen durch „b“ in der temporären Zeichenfolge.

  • Schritt 7 – Geben Sie den Wert von temp zurück.

Beispiel

#include <bits/stdc++.h>
using namespace std;
string replaceChars(string str, vector<vector<char>> pairs){
   // stror the size of the string and the array
   int N = str.size(), M = pairs.size();
   
   // Create a copy of the string str
   string temp = str;
   
   // Iterate over the array
   for (int x = 0; x < M; x++){
   
      // store the characters from the pair
      char a = pairs[x][0], b = pairs[x][1];
      
      // iterate over the string
      for (int y = 0; y < N; y++){
      
         // If the character is equal to a, then replace it with b
         if (str[y] == a){
            temp[y] = b;
         }
      }
   }
   return temp;
}
int main(){
   string str = "abderb";
   vector<vector<char>> pairs{{'a', 'e'},
      {'b', 't'},
      {'e', 'f'},
      {'r', 's'}};
   cout << "The string after replacing with the given characters is - " << replaceChars(str, pairs);
   return 0;
}
Nach dem Login kopieren

Ausgabe

The string after replacing with the given characters is - etdfst	
Nach dem Login kopieren

Zeitkomplexität – O(N*M), wobei N die Länge der Zeichenfolge und M die Länge des Zeichenpaar-Arrays ist.

Raumkomplexität – O(N), weil wir die neue Zeichenfolge in der temporären Variablen speichern.

Methode 2

Mit dieser Methode können wir ein Array der Größe 26 erstellen. Anschließend können wir das ersetzbare Zeichen an der Position des aktuellen Zeichens speichern. Schließlich können wir die ersetzbaren Elemente aus dem Array übernehmen und jedes Zeichen der Zeichenfolge aktualisieren.

Algorithmus

  • Schritt 1 – Ermitteln Sie die String-Größe als „N“ und die Array-Größe als „M“.

  • Schritt 2 – Definieren Sie „anfängliche“ und „endgültige“ Arrays mit einer Länge von 26.

  • Schritt 3 – Durchlaufen Sie die Zeichenfolge und speichern Sie str[Y] im anfänglichen und endgültigen Array-Index von „str[Y] – a“. Hier gibt str[Y] - 'a' einen Index zwischen 0 und 25 basierend auf dem ASCII-Wert des Zeichens an.

  • Der Grund für die Speicherung von str[Y] an der Position „str[Y] – a“ im Anfangs- und Endarray besteht darin, dass wir, wenn ein Zeichen in der Zeichenfolge, aber nicht im Zeichenpaar vorhanden ist, es in der endgültigen Zeichenfolge konstant halten können .

  • Schritt 4 – Durchlaufen Sie das angegebene Array von Zeichenpaaren. Verwenden Sie innerhalb der Schleife verschachtelte Schleifen, um das ursprüngliche Array zu durchlaufen. Wenn das erste Zeichen des aktuellen Paars mit dem Zeichen des „anfänglichen“ Arrays übereinstimmt, werden die Zeichen des „endgültigen“ Arrays mit dem zweiten Zeichen des aktuellen Paars aktualisiert.

  • Schritt 5 − Definieren Sie die Variable „result“ und initialisieren Sie sie mit einer leeren Zeichenfolge.

  • Schritt 6 - Durchlaufen Sie die Eingabezeichenfolge, holen Sie sich das entsprechende Zeichen des aktuellen Zeichens aus dem Array „final“ und hängen Sie es an die Zeichenfolge „result“ an.

  • Schritt 7 – Geben Sie die Ergebniszeichenfolge zurück.

Beispiel

#include <bits/stdc++.h>
using namespace std;
//  Function to replace the characters in the string
string replaceChars(string str, vector<vector<char>> pairs){

   // getting the size of the string and the vector
   int N = str.size(), M = pairs.size();
   
   // Declare two arrays of size 26
   char initial[26];
   char final[26];
   
   // Check all existing characters in the string
   for (int Y = 0; Y < N; Y++){
      initial[str[Y] - 'a'] = str[Y]; final[str[Y] - 'a'] = str[Y];
   }
   
   // Iterate over the range [0, M]
   for (int X = 0; X < M; X++){
   
      // get characters from the vector
      char a = pairs[X][0], b = pairs[X][1];
      
      // Iterate over the range [0, 26]
      for (int Y = 0; Y < 26; Y++){
      
         // If the character is the same as a, then replace it with b in the final array
         if (initial[Y] == a){
            final[Y] = b;
         }
      }
   }
   string result = "";
   
   // get the final string using the final array
   for (int Y = 0; Y < N; Y++){
      result += final[str[Y] - 'a'];
   }
   return result;
}
int main(){
   string str = "aberb";
   vector<vector<char>> pairs{{'a', 'e'},
      {'b', 't'},
      {'e', 'f'},
      {'r', 's'}};
   cout << "The string after replacing with the given characters is - " << replaceChars(str, pairs);
   return 0;
}
Nach dem Login kopieren

Ausgabe

The string after replacing with the given characters is - etfst
Nach dem Login kopieren

Zeitkomplexität – O(N), als verschachtelte Schleife, nur konstante Iteration.

Raumkomplexität – O(1), da ein Array mit der Länge 26 verwendet wird, was konstant ist.

Das obige ist der detaillierte Inhalt vonÄndert eine Zeichenfolge, indem alle Vorkommen eines bestimmten Zeichens durch ein angegebenes Ersatzzeichen ersetzt werden. 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)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate 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)

So ersetzen Sie bestimmte Zeichen in einer Zeichenfolge mithilfe regulärer Ausdrücke durch andere Zeichen in PHP So ersetzen Sie bestimmte Zeichen in einer Zeichenfolge mithilfe regulärer Ausdrücke durch andere Zeichen in PHP Jun 23, 2023 am 09:46 AM

In PHP sind reguläre Ausdrücke ein sehr leistungsfähiges Werkzeug, mit dem wir Zeichenfolgen einfach verarbeiten und konvertieren können. Mithilfe regulärer Ausdrücke können Sie effiziente und flexible Operationen an Zeichenfolgen durchführen, z. B. das Suchen nach Zeichenfolgen mit bestimmten Mustern, das Ersetzen übereinstimmender Zeichenfolgen usw. In diesem Artikel besprechen wir, wie man reguläre Ausdrücke verwendet, um bestimmte Zeichen in einer Zeichenfolge durch andere Zeichen zu ersetzen. Dies ist ein häufiger Bedarf, beispielsweise das Ersetzen von HTML-Tags in einem Textabschnitt durch einfachen Text oder das Ersetzen von Emoji-Tabellen in einem Textabschnitt.

Python-Programm: String von der rechten Seite des Strings abschneiden Python-Programm: String von der rechten Seite des Strings abschneiden Sep 08, 2023 pm 06:21 PM

In Python haben wir eine vordefinierte Funktion rstrip(), um die Zeichen auf der rechten Seite zu entfernen. Dies bedeutet, dass Leerzeichen auf der rechten Seite der Zeichenfolge entfernt werden. Nehmen wir ein Beispiel, um zu verstehen, wie man die linke Seite einer Saite schneidet. Entfernt die rechte Zeichenfolge LESS aus der angegebenen Zeichenfolge „WIRELESS“ und erhält den resultierenden Wert als „WIRE“. Löschen Sie in der angegebenen Zeichenfolge „kingdom“ die Zeichenfolge dom auf der rechten Seite und erhalten Sie den Ergebniswert „king“. Syntax Die in den folgenden Beispielen verwendete Syntax ist −isspace(), eine vordefinierte Methode in Python, um Leerzeichen, Zeilenumbrüche oder Leerzeichen in Zeichen zuzulassen. rstrip("parameterasastri

C++-Programm: Zeichen an einem bestimmten Index ersetzen C++-Programm: Zeichen an einem bestimmten Index ersetzen Aug 25, 2023 pm 10:53 PM

Eine Zeichenfolge ist eine Reihe von Zeichen. Wir können sie auch Zeichenarrays nennen. Stellen Sie sich ein Zeichenarray vor, das aus Zeichenfolgen mit angegebenen Indizes und Werten besteht. Manchmal können wir einige Änderungen an der Zeichenfolge vornehmen. Eine der Änderungen besteht darin, Zeichen durch die Bereitstellung eines bestimmten Index zu ersetzen. In diesem Artikel erfahren Sie, wie Sie mithilfe von C++ ein Zeichen aus einem bestimmten Index innerhalb einer Zeichenfolge ersetzen. existieren

Schreiben Sie ein Programm in Java, um alle Zeichen in einer Datei mit Ausnahme bestimmter Wörter durch „#' zu ersetzen Schreiben Sie ein Programm in Java, um alle Zeichen in einer Datei mit Ausnahme bestimmter Wörter durch „#' zu ersetzen Sep 13, 2023 am 08:57 AM

Die split()-Methode der String-Klasse. Teilen Sie die aktuelle Zeichenfolge in Übereinstimmungen mit dem angegebenen regulären Ausdruck auf. Das von dieser Methode zurückgegebene Array enthält jeden Teilstring dieses Strings, der durch einen anderen Teilstring abgeschlossen wird, der dem angegebenen Ausdruck entspricht oder am Ende des Strings endet. Die Methode replaceAll() der String-Klasse akzeptiert zwei Zeichenfolgen, die reguläre Ausdrücke darstellen, und eine Ersatzzeichenfolge und ersetzt den übereinstimmenden Wert durch die angegebene Zeichenfolge. Ersetzen Sie alle Zeichen in der Datei außer bestimmten Wörtern durch „#“ (einseitig) – lesen Sie den Inhalt der Datei in eine Zeichenfolge. Erstellen Sie ein leeres StringBuffer-Objekt. Verwenden Sie die Methode split(), um den erhaltenen String in ein String-Array aufzuteilen. überall

Python-Programm zum Ersetzen von Zeichen an einem bestimmten Index Python-Programm zum Ersetzen von Zeichen an einem bestimmten Index Aug 19, 2023 am 09:41 AM

In Python können wir ein Zeichen an einem bestimmten Index einfach ersetzen, indem wir die Zeichenfolge mit der Methode list() in eine Liste von Zeichen konvertieren. Anschließend ändern wir das Zeichen am gewünschten Index und konvertieren die Liste mithilfe der Methode „join()“ wieder in einen String. Wir können Zeichen auch an bestimmten Indizes mithilfe der Slice- und Ersetzungsmethoden ersetzen. In diesem Artikel sehen wir ein Beispiel für das Ersetzen eines Zeichens an einem bestimmten Index in Python mithilfe der List- und Join-Methode, der Slicing-Methode und der Ersetzungsmethode. Methode 1: Verwenden Sie die Syntax der Methoden „list()“ und „join()“. Methode „list()“ list(sequence) Die Methode „list()“ akzeptiert eine Sequenz (z. B. eine Zeichenfolge, ein Tupel oder eine Menge) als Parameter und gibt einen bestimmten Wert zurück

Ändert eine Zeichenfolge, indem alle Vorkommen eines bestimmten Zeichens durch ein angegebenes Ersatzzeichen ersetzt werden Ändert eine Zeichenfolge, indem alle Vorkommen eines bestimmten Zeichens durch ein angegebenes Ersatzzeichen ersetzt werden Sep 08, 2023 am 10:17 AM

Bei diesem Problem müssen wir die Zeichen einer bestimmten Zeichenfolge basierend auf den angegebenen Zeichen im Array von Zeichenpaaren ersetzen. Wir werden zwei verschiedene Lösungen diskutieren. Bei der ersten Methode ersetzen wir jedes Zeichen, indem wir die Zeichen und Zeichenpaare der angegebenen Zeichenfolge durchlaufen. Bei der zweiten Methode verwenden wir ein Array der Länge 26, um die jedem Zeichen zugeordneten Ersatzzeichen zu speichern und die Zeichen der angegebenen Zeichenfolge zu ändern. Problemstellung: Wir erhalten eine Zeichenfolge str mit N kleingeschriebenen Buchstaben. Außerdem erhalten wir ein Array mit Zeichenpaaren. Wir müssen die Zeichen „pairs[i][0]“ in der angegebenen Zeichenfolge durch „pairs[i][1]“ ersetzen. BeispielEingabe–str="xyz"

So verwenden Sie die Vue-Formularverarbeitung, um die Zeichenersetzung in Formularfeldern zu implementieren So verwenden Sie die Vue-Formularverarbeitung, um die Zeichenersetzung in Formularfeldern zu implementieren Aug 10, 2023 pm 05:37 PM

So implementieren Sie die Zeichenersetzung in Formularfeldern mithilfe der Vue-Formularverarbeitung. Bei der Entwicklung von Webanwendungen sind Formulare ein wesentlicher Bestandteil. In einigen Szenarien müssen wir möglicherweise vom Benutzer eingegebene Zeichen ersetzen, um Datenformatanforderungen zu erfüllen oder bestimmte Funktionen zu implementieren. Als beliebtes Front-End-Framework bietet Vue.js leistungsstarke Datenbindungs- und -verarbeitungsfunktionen, die die Formularverarbeitung komfortabler machen. In diesem Artikel wird erläutert, wie Sie mit Vue.js die Zeichenersetzungsfunktion von Formularfeldern implementieren, und es werden Codebeispiele bereitgestellt. Erste,

Minimieren Sie die Ersetzung eines Zeichens durch den nächsten Buchstaben, wodurch die Zeichenfolge ein Palindrom wird Minimieren Sie die Ersetzung eines Zeichens durch den nächsten Buchstaben, wodurch die Zeichenfolge ein Palindrom wird Sep 15, 2023 pm 12:25 PM

In diesem Artikel werden wir ein interessantes algorithmisches Problem diskutieren: „Minimieren Sie den Ersatz eines Zeichens durch sein nächstgelegenes Alphabet, um ein String-Palindrom zu erstellen.“ Dieses Problem ist interessant, weil es String-Manipulation, Palindrom-Prüfung und das Konzept der Zeichen-ASCII-Werte beinhaltet . Lassen Sie uns näher auf dieses Thema eingehen. Problemstellung: Bei gegebener Zeichenfolge besteht die Aufgabe darin, sie in ein Palindrom mit einer minimalen Anzahl von Ersetzungen umzuwandeln. Diese Ersetzungen werden dadurch erreicht, dass die Zeichen durch das nächstgelegene Alphabet ersetzt werden. Verständnisfragen Ein Palindrom ist eine Folge von Wörtern, Phrasen, Zahlen oder anderen Zeichen, die rückwärts genauso wie vorwärts gelesen wird. Unser Ziel ist es, die Gesamtzahl der Ersetzungen zu minimieren, die erforderlich sind, um eine bestimmte Zeichenfolge in ein Palindrom umzuwandeln. Betrachten Sie beispielsweise die Zeichenfolge „abc“. Um es in ein Palindrom umzuwandeln, können wir „

See all articles