String Reverse i C++

String Reverse I C



I många C++-programmeringsscenarier kan det vara nödvändigt att vända en sträng. Att vända om en sträng innebär att man ändrar ordningen på tecknen i strängen och ställer in den i omvänd ordning eller så kan det bara vara att skriva ut en sträng bakåt. Allt som krävs för att vända en sträng är att flytta dess sista element till strängens ursprungliga plats och så vidare. I vissa situationer kan det krävas att vända strängen på dess adress permanent. C++ tillhandahåller olika metoder för att vända strängen.

Tekniker för att vända en sträng i C++-programmering

Beroende på kodspecifikationerna som vi utvecklar finns det flera tekniker för att implementera strängomkastningen i C++-programmering. Dessa tekniker är:

  • Använder metoden 'reverse()'.
  • Använder metoden 'strrev()'.
  • Använder 'för'-loopen
  • Använder 'while'-loopen
  • Använder konstruktorn

Exempel 1:

Först importerar vi tre distinkta rubrikfiler som är 'algoritm', 'iostream' och 'sträng'. Vi måste inkludera dessa rubrikfiler så att vi använder de funktioner som är definierade i dem. 'Algorithm'-huvudfilen innehåller många inbyggda funktioner för att hitta, sortera, räkna, ändra etc. som är tillgängliga för oss.







Sedan tillhandahåller 'iostream' funktioner för att mata in eller mata ut data, och 'sträng'-huvudfilen ingår eftersom den tillhandahåller de funktioner som behövs när du arbetar med strängdata. Under dessa rubrikfiler lägger vi till namnutrymmet 'std'. Här anropar vi funktionen 'main()'.



Sedan placerar vi datatypen 'sträng' och initierar 'originalStr' här med lite strängdata. Sedan skriver vi ut den strängen. Efter detta använder vi metoden 'reverse()' som hjälper till att vända strängen. I denna 'reverse()'-metod lägger vi till 'begin()' och 'end()' tillsammans med variabeln 'originalStr'. Nu skriver vi också ut denna omvända sträng som vi får efter att ha tillämpat metoden 'reverse()'.



Kod 1:





#inkludera
#inkludera
#inkludera
använder sig av namnutrymme std ;
int huvud ( )
{
sträng originalStr = 'Sträng omvänd i C++-programmering' ;
cout << 'Originalsträngen!' << endl ;
cout << originalStr << endl << endl ;
omvänd ( originalStr. Börja ( ) , originalStr. slutet ( ) ) ;
cout << 'Den omvända strängen!' << endl ;
cout << originalStr ;
lämna tillbaka 0 ;
}

Produktion:
Den omvända strängen som vi får efter att ha tillämpat metoden 'reverse()' i vår kod renderas nu tillsammans med den ursprungliga strängen.



Exempel 2:

Vi inkluderar rubrikfilerna först och placerar sedan 'namespace std'. Sedan, i metoden 'main()' initierar vi teckenuppsättningen genom att placera datatypen 'char' med variabelnamnet 'Org_str' och skriv strängen här som vi vill vända. Sedan återger vi denna 'Org_str' med hjälp av 'cout'.

Under detta använder vi metoden 'strrev()' för att vända strängen och skicka 'Org_str' som parameter i denna funktion. Nu är strängen omvänd här. Efter detta återger vi också den omvända strängen med hjälp av 'cout'.

Kod 2:

#inkludera
#include
använder sig av namnutrymme std ;
int huvud ( )
{
röding Org_str [ ] = 'String Reverse Program' ;
cout << Org_str << endl << endl ;
strrev ( Org_str ) ;
cout << 'Omvänd sträng' << endl ;
cout << Org_str ;
lämna tillbaka 0 ;
}

Produktion:
Här renderas de ursprungliga och omvända strängarna som vi fick genom att använda metoden 'strrev()' i vår kod.

Exempel 3:

I det här fallet inkluderas rubrikfilerna innan 'namespace std' läggs till. Sedan anropas 'main()' och strängvariabeln läggs till med namnet 'myOrgStr' och initieras med strängdata.

Efter detta deklarerar vi också 'int'-variabeln 'a' och renderar 'myOrgStr'-strängen med 'cout'. Under detta använder vi 'for'-loopen där vi initierar variabeln 'a' med 'myOrgStr.length() – 1' och sedan placerar ett villkor som är 'a >= 0' och minskar det i värdet på 'a' ”. Detta vänder på vår sträng och lagrar den i 'myOrgStr[a]' och visar den även när vi placerar 'myOrgStr[a]' i 'cout'.

Kod 3:

#inkludera
#inkludera
använder sig av namnutrymme std ;
int huvud ( )
{
sträng myOrgStr = 'Hej världen!' ;
int a ;
cout << myOrgStr << endl << endl ;
cout << 'Omvänd sträng' <= 0 ; a -- )
{
cout << myOrgStr [ a ] ;
}
lämna tillbaka 0 ;
}

Produktion:
Detta återger både de ursprungliga och omvända strängarna som vi fick via vår kod med 'for' loop-metoden.

Exempel 4:

Här importerar vi rubrikfilen 'bits/stdc++.h' så vi behöver inte importera de andra rubrikfilerna eftersom denna rubrikfil innehåller alla funktionsdefinitioner. Sedan skriver vi 'namespace std'. Här skapar vi en funktion med namnet 'Rev()' där vi skickar 'string& myString' som argument för denna funktion. Vi skapar den här funktionen här för att vända strängen.

I den här funktionen placerar vi variabeln 'S_len' för datatypen 'int' och initierar den med funktionen 'length()' genom att placera 'myString' med denna. Sedan har vi en annan variabel som är 'no' av 'int' datatyp och initierar den med 'S_len-1'.

Under denna initieras ytterligare en variabel som heter 'a' av datatypen 'int'. Här använder vi loopen 'while()' och lägger till 'ett <= nej' som villkor. Sedan använder vi metoden 'swap()'. Denna 'swap()'-metod hjälper till att byta strängdata och initierar sedan 'no' med 'no -1'. Vi initialiserar också 'a' med 'a+1'.

Vi anropar sedan 'main()' här där vi initierar variabeln 'myString' med strängdata och skriver ut den strängen. Efter detta anropar vi funktionen 'Rev()' som vi skapade i den här koden och sätter 'myString' som parameter för denna funktion som vänder på strängen och sedan visar den omvända strängen.

Kod 4:

#include
använder sig av namnutrymme std ;
tomhet Varv ( sträng & myString )
{
int S_len = myString. längd ( ) ;
int Nej = S_len - 1 ;
int a = 0 ;
medan ( a <= Nej ) {
byta ( myString [ a ] ,myString [ Nej ] ) ;
Nej = Nej - 1 ;
a = a + 1 ;
}

}
int huvud ( )
{
sträng myString = 'Jag älskar programmering' ;
cout << myString << endl ;
cout << ' \n Omvänd sträng' << endl ;
Varv ( myString ) ;
cout << myString ;
lämna tillbaka 0 ;
}

Produktion:
Här presenterar vi både den ursprungliga strängen och den omvända strängen som vi fick genom att använda 'while()'-loopen och 'swap()'-metoden inuti funktionen som vi skapade i vår kod.

Exempel 5:

Vi importerar rubrikfilen 'bits/stdc++.h' med alla funktionsdefinitioner. Därför behöver vi inte importera några andra rubrikfiler. Därefter anger vi 'namespace std' och anropar 'main()' här. Sedan har vi en variabel 'data' av datatypen 'sträng' och initierar den med strängen som vi vill vända.

Vi renderar denna ursprungliga sträng innan vi vänder om den genom att placera variabeln 'data' i 'cout'. Under detta initierar vi en annan variabel som är 'revStr' av samma 'sträng' datatyp. Sedan använder vi 'rbegin()' och 'rend()' som är de omvända iteratorerna som vi lägger till för att vända strängen här. Den omvända strängen sparas nu i variabeln 'revStr' som placeras i 'cout' för att skriva ut den omvända strängen här.

Kod 5:

#omfatta
använder sig av namnutrymme std ;
int huvud ( )
{
strängdata = 'C++ är det bästa programmeringsspråket' ;
cout << data << endl << endl ;
sträng revStr = sträng ( data. börja ( ) , data. gör ( ) ) ;

cout << revStr << endl ;
lämna tillbaka 0 ;
}

Produktion:
Strängen som vi lade till i koden renderas först här. Sedan visas den omvända strängen som vi fick genom att använda de omvända iteratorerna i följande:

Slutsats

Konceptet 'strängomvänd' i C++-programmeringen diskuteras i den här artikeln där vi utforskade flera tekniker för att vända strängen. Vi utforskade alla metoder som hjälper till att vända strängen i C++ i detalj och vända strängen i våra C++-koder. I den här artikeln visade vi de ursprungliga och omvända strängarna i våra koder.