Inhaltsverzeichnis
Algorithmus
Beispiel
Ausgabe
Fazit
Heim Backend-Entwicklung C++ Kehren Sie Wörter mit O(1) zusätzlichem Leerzeichen um

Kehren Sie Wörter mit O(1) zusätzlichem Leerzeichen um

Sep 16, 2023 pm 01:33 PM
反转 单词 o()

Kehren Sie Wörter mit O(1) zusätzlichem Leerzeichen um

Eine Zeichenfolge kann aus mehreren Wörtern bestehen. Jedes Wort in einer C++-Zeichenfolge kann Buchstaben, Zahlen oder Sonderzeichen enthalten. Als Speicherelemente für diese Zeichen gelten Strings. Jedes Wort wird durch ein Leerzeichen getrennt. Jedes Wort bildet auch eine Zeichenfolge aus einem Zeichen. In C++ ist die Umkehrung einer beliebigen Zeichenfolge eine Zeichenfolge, die auf −

folgt
  • Es entsteht, indem die Charaktere vom Ende zum Anfang geführt werden.

  • Die Länge der Originalzeichenfolge bleibt unverändert.

Die Reihenfolge, in der Zeichen in einer Zeichenfolge erscheinen, kann leicht umgekehrt werden, indem die Zeichen am Anfang und Ende des Wortes vertauscht werden.

Konstanter Hilfsraum wird durch O(1) dargestellt, was bedeutet, dass das Programm während der Ausführung keinen zusätzlichen Speicherplatz benötigt.

Einige Beispiele zur Veranschaulichung des Problems sind wie folgt:

Beispiel Beispiel

Beispiel 1 – str:Abc def

Ausgabe: cbA gefüttert

Erklärung: Beim Umkehren einer Zeichenfolge bleibt der Zustand der Zeichen unverändert.

Beispiel 2 – str: Hi spe%32

Ausgabe: Ja, 23 % EPS

Die Problemstellung kann gelöst werden, indem jedes Wort extrahiert und ein Paar Start- und Endzeiger für jedes Wort beibehalten und dann invertiert wird.

Algorithmus

  • Schritt 1−Verwenden Sie eine for-Schleife, um die bereitgestellte Eingabezeichenfolge zu durchlaufen.

  • Schritt 2 – Verwenden Sie die Variable st, um das Anfangszeichen des ersten Wortes zu erfassen.

  • Schritt 3 − Sobald das erste Leerzeichen gefunden wird, wird die Variable lst auf das vorherige Zeichen fixiert, um die Anfangs- und Endzeichen des Wortes zu markieren.

  • Schritt 4 − Mit diesen beiden Zeigern und einer While-Schleife kehren Sie die Zeichen des Wortes um. Bei jeder Iteration der while-Schleife wird der Zeiger bewegt, um die Zeichenfolge zu erschöpfen.

  • Schritt 5 - Die Werte werden aktualisiert, um die Zeiger auf das nächste nachfolgende Wort zu verschieben, und so wird st auf das nächste Zeichen nach dem Leerzeichen neu initialisiert.

  • Schritt 6 – Die gesamte Zeichenfolge wird iteriert und die entsprechenden Wörter werden umgekehrt.

Beispiel

Der folgende C++-Codeausschnitt nimmt eine Zeichenfolge als Eingabe und kehrt die darin enthaltenen Wörter um -

// including the required libraries
#include <bits/stdc++.h>
using namespace std;

//reversing current word of string
void reverseWord(string &st, int s, int e){
   while (s < e) {
      swap(st[s], st[e]);
      s++;
      e--;
   }
}

//reverse the words of a string
string reverseString(string str){
   int len = str.length();

   //initialising the pointer with the first letter of the input string
   int st = 0;
   for (int i = 0; i <= len; i++) {

      //stop the pointer at the first word
      //either a space will be found indicating end of word or the string is finished
      char ch = str[i];
      if (ch == ' ' || i == len) {

         //fetching the last character of the current word of the string
         int lst = i - 1;

         // Reverse the current word
         reverseWord(str, st,lst);

         //since the ith character is string , go to i+1 th character to fetch next word
         st = i + 1;
      }
   }
   return str;
}

//calling the method to reverse words
int main(){

   //input string
   string str = "Reverse words Tutorials Point";
   cout<<"original String:"<<str;

   //reversed string
   string revstr = reverseString(str);
   cout << "\nReversed string : "<< revstr;
   return 0;
}
Nach dem Login kopieren

Ausgabe

original String:Reverse words Tutorials Point
Reversed string : esreveR sdrow slairotuT tnioP
Nach dem Login kopieren

Weltraumkomplexität

Der von der oben genannten Methode benötigte Speicherplatz ist konstant, da keine neue Initialisierung von Variablen jeglicher Art erfolgt. Zum Austauschen von Wörtern ist kein externer Speicherplatz erforderlich. Alle Änderungen werden in verfügbaren Speichervariablen vorgenommen.

Fazit

Strings bestehen aus Zeichen, die in beliebiger Reihenfolge angeordnet oder durch einfache Iteration umgekehrt werden können. Da der Algorithmus eine einzelne Iteration für den gesamten darin gespeicherten Zeichenbereich durchführt, beträgt die erforderliche Gesamtzeit O(n), wobei n die Länge der Zeichenfolge ist.

Das obige ist der detaillierte Inhalt vonKehren Sie Wörter mit O(1) zusätzlichem Leerzeichen um. 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)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
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 verwenden Sie Microsoft Reader Coach mit Immersive Reader So verwenden Sie Microsoft Reader Coach mit Immersive Reader Mar 09, 2024 am 09:34 AM

In diesem Artikel zeigen wir Ihnen, wie Sie Microsoft Reading Coach im Immersive Reader auf einem Windows-PC verwenden. Lesehilfefunktionen helfen Schülern oder Einzelpersonen dabei, das Lesen zu üben und ihre Lese- und Schreibfähigkeiten zu entwickeln. Sie beginnen mit dem Lesen einer Passage oder eines Dokuments in einer unterstützten Anwendung. Auf dieser Grundlage wird Ihr Lesebericht vom Reading Coach-Tool erstellt. Der Lesebericht zeigt Ihre Lesegenauigkeit, die Zeit, die Sie zum Lesen benötigt haben, die Anzahl der richtigen Wörter pro Minute und die Wörter, die Sie beim Lesen am schwierigsten fanden. Sie können auch die Wörter üben, was Ihnen dabei hilft, Ihre Lesefähigkeiten im Allgemeinen zu verbessern. Derzeit nur Office oder Microsoft365 (einschließlich OneNote for Web und Word for We

Wie kann ich mit dem Auswendiglernen von Wörtern wieder beginnen, wenn ich sie mit Tinte auswendig lerne? Teilen Sie die Methode zum Auswendiglernen und erneuten Auswendiglernen von Wörtern in Mo Mo! Wie kann ich mit dem Auswendiglernen von Wörtern wieder beginnen, wenn ich sie mit Tinte auswendig lerne? Teilen Sie die Methode zum Auswendiglernen und erneuten Auswendiglernen von Wörtern in Mo Mo! Mar 15, 2024 pm 03:28 PM

Sind Sie neugierig, wie Sie wieder anfangen können, sich Wörter zu merken? Mo Mo Bei Vocabulary ist eine sehr benutzerfreundliche Software zum Erlernen englischer Wörter. Benutzer können basierend auf ihrem Englischniveau und ihren Lernabsichten eine englische Vokabelbibliothek auswählen Wörter auswendig lernen. Einige Freunde sind mit dem Auswendiglernen der Vokabeln fertig und möchten mit dem Auswendiglernen desselben Vokabelbuchs erneut beginnen, wissen aber nicht, wie das geht? Heute hat der Herausgeber die Methoden zum Auswendiglernen und Wiederauswendiglernen von Wörtern für Sie alle zusammengestellt! Kommen Sie und laden Sie es herunter, wenn es Ihnen hilft! 1. Wie kann ich wieder anfangen, mir Wörter zu merken? Teilen Sie die Methode zum Auswendiglernen und erneuten Auswendiglernen von Wörtern in Mo Mo! 1. Öffnen Sie die Mo Mo Bei Vocabulary-App, sehen Sie sich die Check-in-Funktion auf der Überprüfungsseite an und wählen Sie das Datum des Tages aus. 2. Klicken Sie zur Eingabe und Sie sehen die Option zum Anzeigen von Details. 3. Nachdem Sie zur Seite gesprungen sind, wählen Sie

Wo sind die Wörter, die in Hundred Words Chop abgehackt wurden? Tutorial zur Wortsuche, mit dem Sie Hunderte von Wörtern eliminieren können! Wo sind die Wörter, die in Hundred Words Chop abgehackt wurden? Tutorial zur Wortsuche, mit dem Sie Hunderte von Wörtern eliminieren können! Mar 15, 2024 pm 03:52 PM

1. Wo sind die Wörter, die aus dem Hundred Words Cut entfernt wurden? Tutorial zur Wortsuche, mit dem Sie Hunderte von Wörtern eliminieren können! 1. Gehen Sie zur Startseite und klicken Sie auf die Wortliste. 2. Nachdem Sie zur Seite gesprungen sind, wählen Sie die Option „Gehacktes Wort“. 3. Nach dem Aufrufen der Benutzeroberfläche können Sie die vom Benutzer abgeschnittenen Wörter sehen. 4. Wenn Sie das gehackte Wort wiederherstellen möchten, klicken Sie auf die Option Bearbeiten. 5. Suchen Sie das Wort, das wiederhergestellt werden muss, und klicken Sie rechts auf das Ausschneidesymbol, um das Wort wiederherzustellen. 6. Kehren Sie zur Benutzeroberfläche für gelernte Wörter zurück und Sie können die Wörter sehen, die Sie gerade wiederhergestellt haben.

So kehren Sie ein PHP-Array um und kehren die Reihenfolge um So kehren Sie ein PHP-Array um und kehren die Reihenfolge um Sep 05, 2023 am 08:28 AM

So kehren Sie ein PHP-Array um und kehren es um. In PHP ist ein Array eine häufig verwendete Datenstruktur, die große Datenmengen speichern und bearbeiten kann. Manchmal müssen wir das Array umkehren oder umkehren, um bestimmte Anforderungen zu erfüllen. In diesem Artikel wird die Verwendung von PHP zum Umkehren und Umkehren eines Arrays vorgestellt und entsprechende Codebeispiele gegeben. 1. Ein Array umkehren Das Umkehren eines Arrays bedeutet, dass die Elemente im Array in umgekehrter Reihenfolge entsprechend ihrer ursprünglichen Reihenfolge neu angeordnet werden. PHP bietet eine Vielzahl von Methoden zum Umkehren von Arrays. Hier sind zwei häufig verwendete Methoden:

So aktivieren oder deaktivieren Sie die automatische Korrektur falsch geschriebener Wörter unter Windows 11 So aktivieren oder deaktivieren Sie die automatische Korrektur falsch geschriebener Wörter unter Windows 11 Sep 19, 2023 pm 10:53 PM

Autokorrektur ist eine sehr nützliche Funktion, die Ihnen im Alltag viel Zeit sparen kann. Obwohl es nicht perfekt ist, können Sie sich meistens darauf verlassen, dass es Ihre Rechtschreib- und Schreibfehler behebt. Manchmal funktioniert es jedoch nicht richtig. Sie werden feststellen, dass einige Wörter nicht erkannt werden, was ein effizientes Arbeiten erschwert. In anderen Fällen möchten Sie es einfach deaktivieren und zu den alten Methoden zurückkehren. Aber gibt es irgendwelche Vorteile bei der Verwendung von AutoCorrect? Sparen Sie Zeit, indem Sie Rechtschreibfehler korrigieren. Hilft Ihnen, neue Wörter zu lernen, indem die korrekte Schreibweise angezeigt wird. Es hilft Ihnen, peinliche Fehler in E-Mails und anderen Dokumenten zu vermeiden. Sie können schneller tippen und machen weniger Fehler. Wie schalte ich die Rechtschreibprüfung unter Windows 11 ein oder aus? 1. Tippen Sie in der Einstellungen-App auf die Taste

So kehren Sie die Reihenfolge der Array-Schlüsselwerte mit der Funktion array_reverse in PHP um So kehren Sie die Reihenfolge der Array-Schlüsselwerte mit der Funktion array_reverse in PHP um Jun 26, 2023 pm 01:35 PM

In der PHP-Programmierung ist Array eine sehr häufig verwendete Datenstruktur. Durch die Form von Schlüssel-Wert-Paaren können wir problemlos auf Daten zugreifen und diese verarbeiten. In einigen Fällen müssen wir jedoch die Reihenfolge der Array-Schlüssel umkehren, um bessere Datenverarbeitungsergebnisse zu erzielen. PHP bietet eine spezielle Funktion, die Funktion array_reverse, die ein Array einfach umkehren kann. Als Nächstes führt dieser Artikel die Leser in die Verwendung der Funktion array_reverse in PHP ein, um die Reihenfolge der Array-Schlüsselwerte umzukehren. eins

Berechnen Sie die Länge von Wörtern in einer Zeichenfolge mit Python Berechnen Sie die Länge von Wörtern in einer Zeichenfolge mit Python Sep 13, 2023 am 11:29 AM

Das Ermitteln der Länge einzelner Wörter in einer bestimmten Eingabezeichenfolge mithilfe von Python ist ein Problem, das gelöst werden muss. Wir möchten die Anzahl der Zeichen jedes Wortes in einer Texteingabe zählen und die Ergebnisse in einem strukturierten Stil, beispielsweise einer Liste, anzeigen. Die Aufgabe erfordert das Aufteilen der Eingabezeichenfolge und das Trennen der einzelnen Wörter. Berechnen Sie dann die Länge jedes Wortes anhand der Anzahl der darin enthaltenen Zeichen. Das grundlegende Ziel besteht darin, eine Funktion oder Prozedur zu erstellen, die Eingaben effizient empfangen, die Wortlänge bestimmen und Ergebnisse zeitnah ausgeben kann. Die Lösung dieses Problems ist in einer Vielzahl von Anwendungen von entscheidender Bedeutung, einschließlich der Textverarbeitung, der Verarbeitung natürlicher Sprache und der Datenanalyse, bei der Wortlängenstatistiken aufschlussreiche Informationen liefern und zusätzliche Analysen ermöglichen können. Verwendete Methoden Verwenden Sie Schleifen und die Funktion „split()“. Verwenden Sie die Funktion „map()“ mit len ​​und split()

So nutzen Sie die vorausschauende Autokorrektur in iOS 17 So nutzen Sie die vorausschauende Autokorrektur in iOS 17 Sep 17, 2023 pm 03:37 PM

Dank verbesserter Technologie für maschinelles Lernen hat Apple in iOS 17 die AutoKorrektur beim Eingeben von Text auf dem iPhone nützlicher gemacht. Apple sagt, dass es ein „Morpher-Sprachmodell“ verwendet, um AutoCorrect besser für einzelne Benutzer zu personalisieren und Ihre persönlichen Vorlieben und Wortwahlen zu lernen, um sie beim Tippen nützlicher zu machen. Nachdem Sie iOS 17 einige Wochen lang verwendet haben, sollten Sie feststellen, dass AutoKorrektur-Vorschläge besser vorhersagen, was Sie sagen möchten, und Wörter anzeigen, die Sie zur automatischen Vervollständigung anklicken können. AutoKorrektur ist weniger aggressiv als AutoKorrektur, wenn Sie Akronyme, verkürzte Wörter, Slang und umgangssprachliche Ausdrücke verwenden, ist aber dennoch in der Lage, versehentliche Rechtschreibfehler zu korrigieren. AutoKorrektur korrigieren Wenn AutoKorrektur ein Wort ändert, erscheint eine blaue Linie unter dem korrigierten Wort. Du kannst

See all articles