Stringa inversa in C++

Stringa Inversa In C



In molti scenari di programmazione C++ potrebbe essere necessario invertire una stringa. Invertire una stringa implica cambiare l'ordine dei caratteri nella stringa e impostarlo nell'ordine inverso oppure potrebbe semplicemente stampare una stringa al contrario. Tutto ciò che serve per invertire una stringa è spostare il suo elemento finale nella posizione iniziale della stringa e così via. In alcune situazioni, potrebbe essere necessario invertire permanentemente la stringa al suo indirizzo. C++ fornisce vari metodi per invertire la stringa.

Tecniche per invertire una stringa nella programmazione C++

A seconda delle specifiche del codice che stiamo sviluppando, esistono diverse tecniche per implementare l'inversione delle stringhe nella programmazione C++. Queste tecniche sono:

  • Utilizzando il metodo 'reverse()'.
  • Utilizzando il metodo “strrev()”.
  • Utilizzando il ciclo 'for'.
  • Utilizzando il ciclo 'mentre'.
  • Utilizzando il costruttore

Esempio 1:

Innanzitutto, importiamo tre file di intestazione distinti che sono 'algoritmo', 'iostream' e 'stringa'. Dobbiamo includere questi file di intestazione in modo da utilizzare le funzioni definite in essi. Il file di intestazione 'algoritmo' include numerose funzioni integrate a nostra disposizione per trovare, ordinare, contare, modificare, ecc.







Quindi, 'iostream' fornisce funzioni per l'immissione o l'output dei dati e il file di intestazione 'string' è incluso poiché fornisce le funzioni necessarie durante il lavoro con i dati della stringa. Sotto questi file di intestazione, aggiungiamo lo spazio dei nomi 'std'. Qui invochiamo la funzione “main()”.



Quindi, inseriamo il tipo di dati 'string' e inizializziamo qui 'originalStr' con alcuni dati di stringa. Quindi, stampiamo quella stringa. Successivamente, utilizziamo il metodo “reverse()” che aiuta a invertire la stringa. In questo metodo “reverse()”, aggiungiamo “begin()” e “end()” insieme alla variabile “originalStr”. Ora stampiamo anche questa stringa invertita che otteniamo dopo aver applicato il metodo “reverse()”.



Codice 1:





#include
#include
#include
utilizzando spazio dei nomi standard ;
int principale ( )
{
stringa originaleStr = 'Stringa inversa nella programmazione C++' ;
cout << 'La corda originale!' << fine ;
cout << originaleStr << fine << fine ;
inversione ( originaleStr. inizio ( ) , originaleStr. FINE ( ) ) ;
cout << 'La corda invertita!' << fine ;
cout << originaleStr ;
ritorno 0 ;
}

Produzione:
La stringa invertita che otteniamo dopo aver applicato il metodo “reverse()” nel nostro codice viene ora renderizzata insieme alla stringa originale.



Esempio 2:

Includiamo prima i file di intestazione e poi inseriamo il 'namespace std'. Quindi, nel metodo “main()”, inizializziamo l'array di caratteri inserendo il tipo di dati “char” con il nome della variabile “Org_str” e digitiamo qui la stringa che vogliamo invertire. Quindi, rendiamo questo 'Org_str' con l'aiuto di 'cout'.

Al di sotto di questo, utilizziamo il metodo 'strrev()' per invertire la stringa e passare 'Org_str' come parametro in questa funzione. Ora, qui la stringa è invertita. Successivamente, rendiamo anche la stringa invertita con l'aiuto di 'cout'.

Codice 2:

#include
#include
utilizzando spazio dei nomi standard ;
int principale ( )
{
car Org_str [ ] = 'Programma inverso di stringhe' ;
cout << Org_str << fine << fine ;
strrev ( Org_str ) ;
cout << 'Corda invertita' << fine ;
cout << Org_str ;
ritorno 0 ;
}

Produzione:
Qui vengono renderizzate le stringhe originali e invertite che abbiamo ottenuto utilizzando il metodo “strrev()” nel nostro codice.

Esempio 3:

In questo caso, i file di intestazione vengono inclusi prima che venga aggiunto il 'namespace std'. Quindi, viene richiamato 'main()' e la variabile stringa viene aggiunta con il nome 'myOrgStr' e inizializzata con i dati stringa.

Successivamente, dichiariamo anche la variabile “int” “a” e rendiamo la stringa “myOrgStr” utilizzando “cout”. Al di sotto di questo, utilizziamo il ciclo “for” in cui inizializziamo la variabile “a” con “myOrgStr.length() – 1” e quindi inseriamo una condizione che è “a >= 0” e la decrementiamo nel valore di “a ”. Questo inverte la nostra stringa e la memorizza in 'myOrgStr[a]' e la visualizza anche quando inseriamo 'myOrgStr[a]' all'interno di 'cout'.

Codice 3:

#include
#include
utilizzando spazio dei nomi standard ;
int principale ( )
{
stringa miaOrgStr = 'Ciao mondo!' ;
int UN ;
cout << miaOrgStr << fine << fine ;
cout << 'Corda invertita' <= 0 ; UN -- )
{
cout << miaOrgStr [ UN ] ;
}
ritorno 0 ;
}

Produzione:
Ciò rende sia la stringa originale che quella invertita che abbiamo ottenuto tramite il nostro codice utilizzando il metodo del ciclo 'for'.

Esempio 4:

Qui importiamo il file di intestazione 'bits/stdc++.h' quindi non abbiamo bisogno di importare gli altri file di intestazione poiché questo file di intestazione contiene tutte le definizioni della funzione. Quindi, digitiamo 'namespace std'. Qui creiamo una funzione con il nome “Rev()” in cui passiamo “string& myString” come argomento di questa funzione. Creiamo questa funzione qui per invertire la stringa.

In questa funzione inseriamo la variabile “S_len” del tipo di dati “int” e la inizializziamo con la funzione “length()” inserendo “myString” con questa. Quindi, abbiamo un'altra variabile che è 'no' del tipo di dati 'int' e la inizializziamo con 'S_len-1'.

Sotto questa viene inizializzata un'altra variabile denominata 'a' del tipo di dati 'int'. Qui utilizziamo il ciclo “ while()” e aggiungiamo “a <= no” come condizione. Quindi, utilizziamo il metodo “swap()”. Questo metodo 'swap()' aiuta a scambiare i dati della stringa e quindi inizializza 'no' con 'no -1'. Inizializziamo anche “a” con “a+1”.

Quindi invochiamo 'main()' qui in cui inizializziamo la variabile 'myString' con i dati della stringa e stampiamo quella stringa. Successivamente, chiamiamo la funzione 'Rev()' che abbiamo creato in questo codice e inseriamo 'myString' come parametro di questa funzione che inverte la stringa e quindi visualizza la stringa invertita.

Codice 4:

#include
utilizzando spazio dei nomi standard ;
vuoto Rev ( corda & myString )
{
int S_len = myString. lunghezza ( ) ;
int NO = S_len - 1 ;
int UN = 0 ;
Mentre ( UN <= NO ) {
scambio ( myString [ UN ] ,myString [ NO ] ) ;
NO = NO - 1 ;
UN = UN + 1 ;
}

}
int principale ( )
{
stringa miaStringa = 'Adoro la programmazione' ;
cout << myString << fine ;
cout << ' \N Stringa invertita' << fine ;
Rev ( myString ) ;
cout << myString ;
ritorno 0 ;
}

Produzione:
Qui presentiamo sia la stringa originale che la stringa invertita che abbiamo ottenuto utilizzando il ciclo “ while()” e il metodo “swap()” all'interno della funzione che abbiamo creato nel nostro codice.

Esempio 5:

Importiamo il file header “bits/stdc++.h” con tutte le definizioni delle funzioni. Pertanto, non è necessario importare altri file di intestazione. Successivamente, inseriamo il 'namespace std' e chiamiamo 'main()' qui. Quindi, abbiamo una variabile 'data' del tipo di dati 'string' e inizializziamola con la stringa che vogliamo invertire.

Rendiamo questa stringa originale prima di invertirla inserendo la variabile 'data' in 'cout'. Sotto questo, inizializziamo un'altra variabile che è 'revStr' dello stesso tipo di dati 'string'. Quindi, utilizziamo 'rbegin()' e 'rend()' che sono gli iteratori inversi che aggiungiamo per invertire la stringa qui. La stringa invertita viene ora salvata nella variabile 'revStr' che viene inserita in 'cout' per stampare qui la stringa invertita.

Codice 5:

#includere
utilizzando spazio dei nomi standard ;
int principale ( )
{
dati di stringa = 'C++ è il miglior linguaggio di programmazione' ;
cout << dati << fine << fine ;
stringa revStr = corda ( dati. rbegin ( ) , dati. fa ( ) ) ;

cout << revStr << fine ;
ritorno 0 ;
}

Produzione:
La stringa che abbiamo aggiunto al codice viene prima renderizzata qui. Quindi, la stringa invertita che abbiamo ottenuto utilizzando gli iteratori inversi viene visualizzata come segue:

Conclusione

Il concetto di 'stringa inversa' nella programmazione C++ è discusso in questo articolo in cui abbiamo esplorato diverse tecniche per invertire la stringa. Abbiamo esplorato in dettaglio tutti i metodi che aiutano a invertire la stringa in C++ e abbiamo invertito la stringa nei nostri codici C++. In questo articolo abbiamo mostrato le stringhe originali e invertite nei nostri codici.