I C++ motsatt() är en inbyggd funktion som används för att vända om ordningen på element i det givna intervallet av element. Detta intervall kan vara vilken STL-behållare som helst som vektor eller kan vara en array.
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; }
Produktion
5 4 3 2 1
Syntax för reverse()
Funktionen reverse() är definierad i
motsatt (först sist);
Parametrar:
- första : Iterator till det första elementet i intervallet.
- sista : Iterator till det teoretiska elementet strax efter det sista elementet i intervallet.
Returvärde:
- Denna funktion returnerar inget värde. Det vänder räckvidden på plats.
Exempel
Vända en array
Exemplen nedan visar hur man använder funktionen reverse() för att vända olika databehållare.
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; }
Produktion
5 4 3 2 1
Vänd en sträng
C++#include using namespace std; int main() { string s = 'abcd'; // Reverse the string s reverse(s.begin() s.end()); cout << s; return 0; }
Produktion
dcba
Vänsterrotera en vektor med reverse()
De vänster rotation av en vektor kan göras genom att använda reverse() tre gånger 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; }
Produktion
6 2 9 1 3Skapa frågesport