#include <iostream>
#include <algorithm>
#include <vector>
#include <functional>
#include <iterator>
using namespace std;
int main()
{
vector<int> ivec;
for (int i = 0; i <= 9; ++i)
ivec.push_back(i);
for (vector<int>::iterator iter = ivec.begin(); iter != ivec.end(); ++iter)
cout << *iter << ' ';
cout << endl;
reverse(ivec.begin(), ivec.end()); // reverse是逆转
for (vector<int>::iterator iter = ivec.begin(); iter != ivec.end(); ++iter)
cout << *iter << ' ';
cout << endl; // 输出9 8 7 6 5 4 3 2 1 0
reverse_copy(ivec.begin() + 1, ivec.end() - 1, ostream_iterator<int>(cout, " ")); // 1 2 3 4 5 6 7 8
cout << endl << endl;
reverse(ivec.begin(), ivec.end());
for (vector<int>::iterator iter = ivec.begin(); iter != ivec.end(); ++iter)
cout << *iter << ' ';
cout << endl; // 0 1 2 3 4 5 6 7 8 9
//rotate(ivec.begin(), find(ivec.begin(),ivec.end(),2), ivec.end());
rotate(ivec.begin(), ivec.begin() + 2, ivec.end());
// rotate是旋转,旋转后从ivec.begin() + 2开始,将ivec.begin()旋转到 ivec.end(),
for (vector<int>::iterator iter = ivec.begin(); iter != ivec.end(); ++iter)
cout << *iter << ' ';
cout << endl; // 2 3 4 5 6 7 8 9 0 1
return 0;
}
逆转与旋转
最新推荐文章于 2021-02-24 10:25:45 发布