The reverse function reverses the contents of a container, contained in < algorithm> In the library.
1. Function prototype
The reverse function is equivalent to the following code:
1. Function prototype
The reverse function is equivalent to the following code:
template <class BidirectionalIterator> void reverse (BidirectionalIterator first, BidirectionalIterator last)
{
while ((first!=last)&&(first!=--last))
{
std::iter_swap (first,last);
++first;
}
}
The reverse function swaps two elements using iter_swap.
2. Parameters: first and last
First and last are bidirectional iterators, and the scope of reverse function inversion is [first,last], so the elements pointed to by first are included, but the elements pointed to by last are not.
3. Return value
The reverse function returns no value.
Example 4,
// reverse algorithm example
#include <iostream>
// std::cout
#include <algorithm>
// std::reverse
#include <vector>
// std::vector
int main () {
std::vector<int> myvector;
// set some values:
for (int i=1; i<10; ++i) myvector.push_back(i); // 1 2 3 4 5 6 7 8 9
std::reverse(myvector.begin(),myvector.end()); // 9 8 7 6 5 4 3 2 1
// print out content:
std::cout << "myvector contains:";
for (std::vector<int>::iterator it=myvector.begin(); it!=myvector.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
return 0;
}
Output:
myvector contains: 9 8 7 6 5 4 3 2 1 |
5. Complexity
Iterate over the first and last elements. So the complexity is linear and the loop is half the length of the array.
Read More:
- How to Use the Reverse() Function
- PHP function file_ get_ Contents() reports an error when using HTTPS protocol: SSL operation failed
- Codeworks educational round 96 [reverse pair] E. string reverse
- 【Hackerrank】Reverse a doubly linked list
- 7. Reverse Integer [easy] (Python)
- Error running docker container: starting container process caused “exec: \“python\“: executable file
- Java uses regular expressions to intercept the contents between specified strings
- 206. Reverse Linked List [easy] (Python)
- Leetcode: 7. Reverse Integer(JAVA)
- The node rimraf module recursively deletes the contents of the folder
- Get connection timeout retry: 1 MySQL errorcode 0, state 08s01 docker container accessing MySQL container is very slow and sometimes interrupted
- ./src/App.js Line 13:11: Parsing error: Unterminated JSX contents (react)
- Nginx reverse proxy MySQL
- Mybatis reverse problem failed to load ApplicationContext
- IOS reverse error: use of undeclared identifier ‘mshookivar’
- Nginx reverse proxy report 400 error solution!
- NxL job cluster nginx routing forwarding and reverse proxy
- Golang timer function executes a function every few minutes
- Nginx front end and back end separation + service cluster reverse proxy
- Python – get the information of calling function from called function