Maison  >  Article  >  développement back-end  >  Vérifiez si une chaîne contient des lettres consécutives et si chaque lettre n'apparaît qu'une seule fois

Vérifiez si une chaîne contient des lettres consécutives et si chaque lettre n'apparaît qu'une seule fois

WBOY
WBOYavant
2023-09-08 13:57:031164parcourir

Vérifiez si une chaîne contient des lettres consécutives et si chaque lettre napparaît quune seule fois

Présentation

En C++, une chaîne est une séquence de caractères qui peuvent être différents ou répétés. Les caractères consécutifs sont des caractères qui apparaissent en même temps et la différence entre eux est de 1. Par exemple, les caractères a et b sont consécutifs car ils apparaissent ensemble. Cependant, les caractères m et o ont une différence de 2 dans leurs positions, ce qui les rend non consécutifs.

Dans cet article, nous allons développer un code qui prendra une chaîne en entrée et affichera vrai lorsque tous les caractères de la chaîne sont consécutifs. Voyons l'exemple ci-dessous pour mieux comprendre ce sujet

Exemple d'exemple

Exemple 1 - str - "pqsr"

Sortie - Oui

Dans cet article, nous allons développer un code pour extraire le caractère actuel et le caractère précédent de la chaîne. Il est ensuite vérifié si les caractères diffèrent par une position non équivalente à 1, puis la valeur booléenne fausse est renvoyée.

Syntaxe

La traduction de

sort()

est :

sort()

sort(str.begin(), str.end())

La méthode sort() en C++ est utilisée pour organiser les caractères d'une chaîne par ordre croissant du début à la fin.

Paramètres

str - La chaîne d'entrée

end - le dernier caractère apparaissant dans la chaîne

begin-le premier caractère apparaissant dans la chaîne

length()

se traduit par :

length()

La méthode length() en C++ est utilisée pour calculer le nombre de caractères dans la chaîne.

str.length()

Paramètres

str - La chaîne d'entrée

Algorithme

  • Accepte une chaîne d'entrée, str comme entrée.

  • La chaîne d'entrée est triée à l'aide de la méthode sort()

  • .
  • Une itération de la chaîne est effectuée, en utilisant la boucle for i.

  • La longueur de la chaîne est calculée à l'aide de la méthode length() et stockée dans la variable len.

  • Effectuez une itération de boucle for sur la chaîne, i est l'itération effectuée.

  • Extrayez les caractères aux positions ième, ch et i-1ème, ch1 à chaque fois.

  • Si la différence entre ces deux caractères n'est pas égale à 1, alors une valeur booléenne fausse est renvoyée

  • Si tous les caractères correspondants satisfont à la condition requise, alors la valeur booléenne - true est renvoyée.

  • Cette valeur est renvoyée sous forme d'indicateur booléen et est stockée dans la variable res. Si sa valeur est vraie, une chaîne contenant des caractères consécutifs est imprimée.

Exemple

L'extrait de code C++ suivant est utilisé pour saisir un exemple de chaîne et calculer si tous les caractères apparaissant dans la chaîne sont consécutifs.

//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;
}

Sortie

Input String − mpon 
Yes, the string contains only consecutive characters

Conclusion

Les caractères qui continuent d'apparaître dans une chaîne sont des lettres qui apparaissent en même temps. Ceci peut être réalisé en triant la chaîne du début à la fin. Les personnages occupant des positions consécutives peuvent être facilement comparés et vérifiés combien de positions diffèrent entre eux. Cela peut être utilisé pour capturer des informations indiquant si une chaîne est continue.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer