Inversion de chaîne en C++

Inversion De Chaine En C



Dans de nombreux scénarios de programmation C++, il peut être nécessaire d'inverser une chaîne. Inverser une chaîne implique de changer l'ordre des caractères dans la chaîne et de la définir dans l'ordre inverse ou il peut simplement s'agir d'imprimer une chaîne à l'envers. Tout ce qui est nécessaire pour inverser une chaîne est de déplacer son dernier élément à la place initiale de la chaîne et ainsi de suite. Dans certaines situations, il peut être nécessaire d'inverser définitivement la chaîne à son adresse. C++ fournit diverses méthodes pour inverser la chaîne.

Techniques pour inverser une chaîne en programmation C++

Selon les spécifications de code que nous développons, plusieurs techniques existent pour implémenter l'inversion de chaîne en programmation C++. Ces techniques sont :

  • Utiliser la méthode « reverse() »
  • Utiliser la méthode « strrev() »
  • Utiliser la boucle « for »
  • Utiliser la boucle « while »
  • Utiliser le constructeur

Exemple 1:

Tout d'abord, nous importons trois fichiers d'en-tête distincts qui sont « algorithme », « iostream » et « chaîne ». Nous devons inclure ces fichiers d'en-tête afin d'utiliser les fonctions qui y sont définies. Le fichier d'en-tête « algorithme » comprend de nombreuses fonctions intégrées de recherche, de tri, de comptage, de modification, etc. qui sont à notre disposition.







Ensuite, le « iostream » fournit des fonctions pour entrer ou sortir les données, et le fichier d'en-tête « string » est inclus car il fournit les fonctions nécessaires pour travailler avec les données de chaîne. Sous ces fichiers d'en-tête, nous ajoutons l'espace de noms « std ». Ici, nous invoquons la fonction « main() ».



Ensuite, nous plaçons le type de données « string » et initialisons ici le « originalStr » avec des données de chaîne. Ensuite, nous imprimons cette chaîne. Après cela, nous utilisons la méthode « reverse() » qui aide à inverser la chaîne. Dans cette méthode « reverse() », nous ajoutons les éléments « begin() » et « end() » ainsi que la variable « originalStr ». Maintenant, nous imprimons également cette chaîne inversée que nous obtenons après avoir appliqué la méthode « reverse() ».



Codage 1 :





#include
#include
#include
en utilisant espace de noms norme ;
int principal ( )
{
chaîne originalStr = 'String Reverse dans la programmation C++' ;
cout << 'La chaîne originale !' << fin ;
cout << originalStr << fin << fin ;
inverse ( originalStr. commencer ( ) , originalStr. fin ( ) ) ;
cout << 'La corde inversée !' << fin ;
cout << originalStr ;
retour 0 ;
}

Sortir:
La chaîne inversée que nous obtenons après avoir appliqué la méthode « reverse() » dans notre code est maintenant rendue avec la chaîne d'origine.



Exemple 2 :

Nous incluons d'abord les fichiers d'en-tête, puis plaçons le « namespace std ». Ensuite, dans la méthode « main() », nous initialisons le tableau de caractères en plaçant le type de données « char » avec le nom de la variable « Org_str » et tapons ici la chaîne que nous voulons inverser. Ensuite, nous rendons ce « Org_str » à l'aide de « cout ».

En dessous, nous utilisons la méthode « strrev() » pour inverser la chaîne et passer « Org_str » comme paramètre dans cette fonction. Maintenant, la chaîne est inversée ici. Après cela, nous rendons également la chaîne inversée à l'aide de « cout ».

Code 2 :

#include
#include
en utilisant espace de noms norme ;
int principal ( )
{
carboniser Org_str [ ] = 'Programme inversé de chaîne' ;
cout << Org_str << fin << fin ;
strrev ( Org_str ) ;
cout << 'Chaîne inversée' << fin ;
cout << Org_str ;
retour 0 ;
}

Sortir:
Ici, les chaînes originales et inversées que nous avons obtenues en utilisant la méthode « strrev() » dans notre code sont rendues.

Exemple 3 :

Dans ce cas, les fichiers d'en-tête sont inclus avant l'ajout du « namespace std ». Ensuite, le « main() » est invoqué et la variable de chaîne est ajoutée avec le nom « myOrgStr » et initialisée avec les données de chaîne.

Après cela, nous déclarons également la variable « int » « a » et restituons la chaîne « myOrgStr » en utilisant « cout ». En dessous, nous utilisons la boucle « for » où nous initialisons la variable « a » avec « myOrgStr.length() – 1 », puis plaçons une condition qui est « a >= 0 » et la décrémentons de la valeur de « a ». ». Cela inverse notre chaîne et la stocke dans « myOrgStr[a] » et l'affiche également lorsque nous plaçons « myOrgStr[a] » à l'intérieur du « cout ».

Code 3 :

#include
#include
en utilisant espace de noms norme ;
int principal ( )
{
chaîne maStrOrg = 'Bonjour le monde!' ;
int un ;
cout << maStreOrg << fin << fin ;
cout << 'Chaîne inversée' <= 0 ; un -- )
{
cout << maStreOrg [ un ] ;
}
retour 0 ;
}

Sortir:
Cela restitue à la fois les chaînes originales et inversées que nous avons obtenues via notre code en utilisant la méthode de boucle « for ».

Exemple 4 :

Ici, nous importons le fichier d'en-tête « bits/stdc++.h » nous n'avons donc pas besoin d'importer les autres fichiers d'en-tête puisque ce fichier d'en-tête contient toutes les définitions de la fonction. Ensuite, nous tapons le « namespace std ». Ici, nous créons une fonction avec le nom « Rev() » dans laquelle nous passons la « string& myString » comme argument de cette fonction. Nous créons cette fonction ici pour inverser la chaîne.

Dans cette fonction, nous plaçons la variable « S_len » du type de données « int » et l'initialisons avec la fonction « length() » en plaçant « myString » avec ceci. Ensuite, nous avons une autre variable qui est « no » de type de données « int » et l'initialisons avec « S_len-1 ».

En dessous, une autre variable est initialisée et nommée « a » du type de données « int ». Ici, nous utilisons la boucle « while() » et ajoutons « a <= no » comme condition. Ensuite, nous utilisons la méthode « swap() ». Cette méthode « swap() » facilite l'échange des données de chaîne, puis initialise « no » avec le « no -1 ». On initialise également « a » avec « a+1 ».

Nous invoquons ensuite ici le « main() » dans lequel nous initialisons la variable « myString » avec les données de chaîne et imprimons cette chaîne. Après cela, nous appelons la fonction « Rev() » que nous avons créée dans ce code et mettons « myString » comme paramètre de cette fonction qui inverse la chaîne puis affiche la chaîne inversée.

Code 4 :

#include
en utilisant espace de noms norme ;
vide Tour ( chaîne & maChaîne )
{
int S_len = maChaîne. longueur ( ) ;
int Non = S_len - 1 ;
int un = 0 ;
alors que ( un <= Non ) {
échanger ( maChaîne [ un ] ,maChaîne [ Non ] ) ;
Non = Non - 1 ;
un = un + 1 ;
}

}
int principal ( )
{
chaîne maChaîne = 'J'adore la programmation' ;
cout << maChaîne << fin ;
cout << ' \n Chaîne inversée' << fin ;
Tour ( maChaîne ) ;
cout << maChaîne ;
retour 0 ;
}

Sortir:
Ici, nous présentons à la fois la chaîne d'origine et la chaîne inversée que nous avons obtenues en utilisant la boucle « while() » et la méthode « swap() » à l'intérieur de la fonction que nous avons créée dans notre code.

Exemple 5 :

Nous importons le fichier d'en-tête « bits/stdc++.h » avec toutes les définitions de fonctions. Par conséquent, nous n’avons pas besoin d’importer d’autres fichiers d’en-tête. Ensuite, nous entrons dans le « namespace std » et appelons « main() » ici. Ensuite, nous avons une variable « data » du type de données « string » et l’initialisons avec la chaîne que nous voulons inverser.

Nous rendons cette chaîne originale avant de l'inverser en plaçant la variable « data » dans le « cout ». En dessous, nous initialisons une autre variable qui est « revStr » du même type de données « string ». Ensuite, nous utilisons « rbegin() » et « rend() » qui sont les itérateurs inverses que nous ajoutons pour inverser la chaîne ici. La chaîne inversée est maintenant enregistrée dans la variable « revStr » qui est placée dans le « cout » pour imprimer ici la chaîne inversée.

Code 5 :

#inclure
en utilisant espace de noms norme ;
int principal ( )
{
données de chaîne = 'C++ est le meilleur langage de programmation' ;
cout << données << fin << fin ;
chaîne revStr = chaîne ( données. commencer ( ) , données. rend ( ) ) ;

cout << revStr << fin ;
retour 0 ;
}

Sortir:
La chaîne que nous avons ajoutée au code est d'abord rendue ici. Ensuite, la chaîne inversée que nous avons obtenue en utilisant les itérateurs inverses est affichée comme suit :

Conclusion

Le concept « d'inversion de chaîne » dans la programmation C++ est abordé dans cet article où nous avons exploré plusieurs techniques pour inverser la chaîne. Nous avons exploré en détail toutes les méthodes permettant d’inverser la chaîne en C++ et inversé la chaîne dans nos codes C++. Dans cet article, nous avons montré les chaînes originales et inversées dans nos codes.