Parole inversa in una stringa usando C ++

Parole inversa in una stringa usando C ++
Una variabile di stringa è costituita da una raccolta di personaggi circondati da doppie citazioni. Questo articolo C ++ passerà come invertire le parole in una stringa usando qualsiasi funzione integrata e altre.

Invertire o girare completamente una stringa in C ++ implica la modifica della sequenza dei caratteri nella stringa per apparire all'indietro. A seconda delle esigenze del programma che stai implementando, possiamo utilizzare una varietà di implementazioni per invertire una stringa.

Esempio 1: uso della funzione di inversione integrata per le parole di inversione in una stringa in C++

C ++ include una funzione inversa per le stringhe inverte. La stringa che avvia l'iteratore e l'iteratore di fine stringa sono gli unici due parametri accettati da questa funzione. La successiva riga di codice mostra l'uso di questa funzione.

Inizialmente, abbiamo incluso il file di intestazione nel codice. Il file iostream e il file STDC. Questo file STDC renderà qui la funzione di stringa inversa. Viene inoltre fornito il file dello spazio dei nomi STD, consentendo l'uso delle sue classi e funzioni nel codice.

Quindi, abbiamo la funzione principale del programma e, nel corpo della funzione principale, abbiamo una dichiarazione variabile di stringa come "Strvalue". Allo stesso tempo, l'abbiamo inizializzato con la parola. La stringa di output verrà visualizzata tramite il comando C ++ Cout. Dopo questo, utilizziamo una funzione denominata "Reverse". La funzione "inversa" assunge due parametri. Il primo parametro è l'inizio () e il secondo parametro è l'iteratore end () che iterate sulla stringa di parole specificata. La funzione Begin () restituisce un iteratore che si riferisce all'elemento iniziale del contenitore.

D'altra parte, l'iteratore di fine () restituisce un iteratore riferito all'ultimo elemento del contenitore. La parola di stringa invertita verrà stampata dopo la funzione di inversione.

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()
String StrValue = "Eccellente";
cout<<"String:"<Reverse (strvalue.inizio (), strvalue.FINE());
cout<<"Reverse String:"<

I risultati della stringa, così come la stringa invertita, sono mostrati nella seguente immagine:

Esempio 2: utilizzo di per loop per invertire le parole in una stringa in c++

Un ciclo è utile per invertire una stringa. Per modificare le posizioni degli elementi, useremo la funzione di swap, che è un metodo integrato di C++. Discutiamo il seguente frammento di codice per invertire una stringa.

Abbiamo aggiunto i file di intestazione nel codice. Nel passaggio successivo, abbiamo invocato la funzione principale, in cui implementiamo il codice per invertire una stringa. Innanzitutto, abbiamo definito una variabile stringa "mystring". La variabile stringa "mystring" contiene una parola di stringa "kalsoom", su cui dobbiamo applicare il metodo inverso. Abbiamo visualizzato la stringa con l'istruzione Cout. Quindi, abbiamo dichiarato una variabile INT "Strlen", che ha chiamato la funzione di lunghezza per la stringa data. Abbiamo anche dichiarato un'altra variabile INT "S" per mantenere "Strlen-1". La procedura "Strlen-1" richiede la lunghezza della stringa fino al carattere nell'ultima posizione.

Quindi, abbiamo un algoritmo di swap in cui "temp" viene utilizzato per archiviare gli elementi del "char" all'indice "i" in modo da poterlo scambiare con gli elementi char all'indice "s" in seguito. Viene quindi visualizzata la stringa invertita di questo programma. Successivamente, abbiamo una condizione per loop che invertirà la parola della stringa specificata.

#includere
Utilizzo dello spazio dei nomi std;
int main ()
string mystring = "kalsoom";
cout<<"Original String: "<int strlen = mystring.lunghezza();
int s = strlen-1;
per (int i = 0; i<(strlen/2);i++)
char temp = mystring [i];
Mystring [i] = mystring [s];
Mystring [s] = temp;
S = S-1;

cout<<"Reversed String: "<

È possibile vedere la stringa originale "kalsoom" e il retro della stringa data sul prompt di Ubuntu.

Esempio 3: uso di una funzione per invertire le parole in una stringa in c++

La ricorsione viene anche utilizzata per fare una funzione di stringa inversa. La successiva illustrazione del codice dimostra come possiamo invertire la stringa tramite funzione.

Nel primo passo, abbiamo una funzione chiamata "Revstr" e il costruttore viene anche generato per questa funzione. Il costruttore prende il riferimento stringa, la variabile intera "i" e l'altra variabile intera "J". Nella funzione "Revstr", abbiamo la condizione if e la funzione di swap, che scambia l'indice "i" con l'indice "j". La funzione "Revstr" è chiamata per la prossima parola della stringa.

Alla fine, la funzione principale ha il comando Cout utilizzato per stampare la stringa prima del metodo inverso e dopo il metodo inverso.

#includere
Utilizzo dello spazio dei nomi std;
void revstr (String & Str, int i, int j)
se io<=j)return;
swap (str [i], str [j]);
Revstr (STR, I-1, J+1);

int main ()
string mystr = "linux";
cout<<"String: "<Revstr (Mystr, Mystr.lunghezza ()-1,0);
cout<<"Reversed String: "<

La seguente screenshot mostra l'output della stringa prima e dopo aver applicato la funzione:

Esempio 4: creazione di una nuova stringa per invertire le parole in una stringa in C++

Looping all'indietro su una stringa e mantenere il contenuto in una nuova stringa della stessa dimensione è un approccio di rotonda per invertire. Il metodo push-back () può aggiungere caratteri a una stringa vuota.

Nella funzione principale del seguente programma, abbiamo dichiarato una variabile stringa "Stringone" e archiviato una parola di stringa in essa. Quindi, abbiamo dichiarato un'altra variabile, "New_string". Il loop è usato per la variabile stringa "Stringone", che itera nell'ultimo carattere nella stringa e restituisce la stringa in ordine inverso. Quindi, con il metodo push_back (), abbiamo aggiunto il valore della stringa restituito dal loop al new_string. Alla fine, la stringa e la stringa invertita verranno stampate.

#includere
Utilizzo dello spazio dei nomi std;
int main ()
string Stringone = "programmazione";
stringa new_string;
per (int s = stringone.lunghezza ()-1; s> = 0; S--)
new_string.push_back (stringone [s]);

cout<<"String: "<cout<<"Reversed string: "<

I seguenti risultati sono mostrati che la stringa è invertita sull'esecuzione del programma precedente:

Conclusione

Qui, abbiamo invertito la stringa di parole esplorando i possibili modi per invertire la stringa in C++. Abbiamo invertito la stringa con la funzione integrata C ++, il metodo e la funzione Loop e la creazione di una nuova stringa. Tutti i risultati ottenuti da questi metodi di inversione dei metodi di stringa hanno risultati dimostrati utilizzando il compilatore C ++ in Ubuntu 20.04.