Heim > Backend-Entwicklung > C++ > Hauptteil

Überprüfen Sie, ob eine Zeichenfolge aufeinanderfolgende Buchstaben enthält und jeder Buchstabe nur einmal vorkommt

WBOY
Freigeben: 2023-09-08 13:57:03
nach vorne
1167 Leute haben es durchsucht

Überprüfen Sie, ob eine Zeichenfolge aufeinanderfolgende Buchstaben enthält und jeder Buchstabe nur einmal vorkommt

Einführung

In C++ ist eine Zeichenfolge eine Folge von Zeichen, die unterschiedlich sein oder wiederholt werden können. Aufeinanderfolgende Zeichen sind Zeichen, die gleichzeitig auftreten und deren Differenz 1 beträgt. Beispielsweise sind die Zeichen a und b aufeinanderfolgend, weil sie zusammen erscheinen. Allerdings haben die Zeichen m und o einen Positionsunterschied von 2, sodass sie nicht aufeinanderfolgend sind.

In diesem Artikel entwickeln wir einen Code, der eine Zeichenfolge als Eingabe verwendet und „true“ anzeigt, wenn alle Zeichen in der Zeichenfolge aufeinander folgen. Sehen wir uns das Beispiel unten an, um dieses Thema besser zu verstehen

Beispielbeispiel

Beispiel 1 – str – „pqsr“

Ausgabe – Ja

In diesem Artikel entwickeln wir einen Code, um das aktuelle und das vorherige Zeichen aus der Zeichenfolge zu extrahieren. Anschließend wird weiter geprüft, ob sich die Zeichen in der Position unterscheiden, die nicht 1 entspricht, und dann wird der boolesche Wert „Falsch“ zurückgegeben.

Syntax

Die Übersetzung von

sort()

lautet:

sort()

sort(str.begin(), str.end())
Nach dem Login kopieren

Die Methode sort() in C++ wird verwendet, um die Zeichen in einer Zeichenfolge vom Anfang bis zum Ende in aufsteigender Reihenfolge anzuordnen.

Parameter

str – Die Eingabezeichenfolge

end – das letzte Zeichen, das in der Zeichenfolge erscheint

Begin – das erste Zeichen, das in der Zeichenfolge erscheint

length()

wird übersetzt als:

length()

Die Methode length() in C++ wird verwendet, um die Anzahl der Zeichen in der Zeichenfolge zu berechnen.

str.length()
Nach dem Login kopieren

Parameter

str – Die Eingabezeichenfolge

Algorithmus

  • Akzeptiert eine Eingabezeichenfolge, str, als Eingabe.

  • Die Eingabezeichenfolge wird mit der Methode sort() sortiert

  • Eine Iteration der Zeichenfolge wird unter Verwendung der for-Schleife i.
  • durchgeführt

  • Die Länge der Zeichenfolge wird mit der Methode length() berechnet und in der len-Variablen gespeichert.
  • Führen Sie eine for-Schleifeniteration für die Zeichenfolge durch. i ist die durchgeführte Iteration.
  • Extrahieren Sie jedes Mal die Zeichen an den Positionen ith, ch und i-1, ch1.
  • Wenn die Differenz zwischen diesen beiden Zeichen nicht gleich 1 ist, wird ein boolescher falscher Wert zurückgegeben
  • Wenn alle entsprechenden Zeichen die erforderliche Bedingung erfüllen, wird der boolesche Wert „true“ zurückgegeben.
  • Dieser Wert wird als boolesches Flag zurückgegeben und in der Variablen res gespeichert. Wenn der Wert wahr ist, wird eine Zeichenfolge mit aufeinanderfolgenden Zeichen gedruckt.
  • Beispiel

Der folgende C++-Codeausschnitt wird verwendet, um eine Beispielzeichenfolge einzugeben und zu berechnen, ob alle in der Zeichenfolge erscheinenden Zeichen aufeinanderfolgend sind.

//including the required libraries 
#include <bits/stdc++.h>
using namespace std;
 
//function to check of characters consecutive
bool validateString(string str) {
 
   //length of the string
   int len = str.length();
 
   // sorting the given string
   sort(str.begin(), str.end());
 
   // Iterate for every index and
   // check for the condition
   for (int i = 1; i < len; i++) {
 
      //extract characters at the required pos 
      char ch = str[i];
      char ch1 = str[i-1];
      if (ch-ch1 != 1)
      //in case characters are not consecutive
         return false;
   }
   //if condition holds
    return true;
}
 
//calling the main method
int main() {
 
   // 1st example
   string str = "mpon";
   cout << "Input String : " <<str << " \n";
   bool res = validateString(str);
   if (res)
       cout << "Yes, the string contains only consecutive characters\n";
   else
       cout << "No, the string doesn't contain only consecutive characters.\n";
   return 0;
}
Nach dem Login kopieren

Ausgabe

Input String − mpon 
Yes, the string contains only consecutive characters
Nach dem Login kopieren

Fazit

Zeichen, die kontinuierlich in einer Zeichenfolge erscheinen, sind Buchstaben, die gleichzeitig erscheinen. Dies kann erreicht werden, indem die Zeichenfolge von Anfang bis Ende sortiert wird. Charaktere an aufeinanderfolgenden Positionen können leicht verglichen und überprüft werden, wie viele Positionen sich zwischen ihnen unterscheiden. Dies kann verwendet werden, um Informationen darüber zu erfassen, ob eine Zeichenfolge kontinuierlich ist.

Das obige ist der detaillierte Inhalt vonÜberprüfen Sie, ob eine Zeichenfolge aufeinanderfolgende Buchstaben enthält und jeder Buchstabe nur einmal vorkommt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!