reverse() i C++ STL
I C++ omvendt() er en innebygd funksjon som brukes til å reversere rekkefølgen av elementer i det gitte elementområdet. Dette området kan være en hvilken som helst STL-beholder som vektor eller kan være en matrise.
C++ #include using namespace std ; int main () { vector < int > v = { 1 2 3 4 5 }; // Reversing the vector reverse ( v . begin () v . end ()); for ( int i : v ) cout < < i < < ' ' ; return 0 ; }
Produksjon
5 4 3 2 1
Syntaks for reverse()
Reverse()-funksjonen er definert i
omvendt (første siste);
Parametere:
- først : Iterator til det første elementet i området.
- siste : Iterator til det teoretiske elementet like etter det siste elementet i området.
Returverdi:
- Denne funksjonen returnerer ingen verdi. Det reverserer rekkevidden på stedet.
Eksempler
Reversere en matrise
Eksemplene nedenfor viser hvordan du bruker reverse()-funksjonen til å reversere forskjellige databeholdere.
C++ #include using namespace std ; int main () { int arr [] = { 1 2 3 4 5 }; int n = sizeof ( arr ) / sizeof ( arr [ 0 ]); // Reverse the array arr reverse ( arr arr + n ); for ( int i : arr ) cout < < i < < ' ' ; return 0 ; }
Produksjon
5 4 3 2 1
Snu en streng
C++ #include using namespace std ; int main () { string s = 'abcd' ; // Reverse the string s reverse ( s . begin () s . end ()); cout < < s ; return 0 ; }
Produksjon
dcba
Venstre Roter en vektor ved å bruke reverse()
De venstre rotasjon av en vektor kan gjøres ved å bruke reverse() tre ganger på den.
C++ #include using namespace std ; int main () { vector < int > v = { 1 3 6 2 9 }; int n = v . size (); int d = 2 ; // Left rotate the vector by d place reverse ( v . begin () v . begin () + d ); reverse ( v . begin () + d v . end ()); reverse ( v . begin () v . end ()); for ( auto i : v ) cout < < i < < ' ' ; return 0 ; }
Produksjon
6 2 9 1 3Lag quiz