std :: rotate()函数以及C ++ STL中的示例
C++STLstd::rotate()函数
rotation()函数是算法标头的库函数,用于在给定范围内向左旋转序列的元素,接受范围(开始,结束)和中间点,以这种方式旋转元素中间迭代器指向的元素将成为新的第一个元素。
注意:要使用rotate()函数–包括<algorithm>头文件,或者您可以简单地使用<bits/stdc++。h>头文件。
std::rotate()函数的语法
std::rotate(iterator start, iterator middle, iterator end);
参数:
迭代器开始–指向序列第一个元素的迭代器。
中间迭代器–指向中间或我们要开始旋转的其他元素的迭代器。
迭代器末端–指向序列的最后一个元素的迭代器。
返回值:void–返回注释。
示例
Input: vector<int> v{ 10, 20, 30, 40, 50 }; //从第二元素旋转向量 rotate(v.begin(), v.begin() + 2, v.end()); Output: 30 40 50 10 20
C++STL程序演示了std::rotate()函数的使用
在此程序中,我们有一个向量,并从第二个索引开始旋转其元素。
//C++STL程序演示使用 //std::rotate()函数 #include <iostream> #include <algorithm> #include <vector> using namespace std; //主要代码 int main(){ //向量 vector<int> v{ 10, 20, 30, 40, 50 }; //打印矢量元素 cout << "vector elements begfore rotating..." << endl; for (int x : v) cout << x << " "; cout << endl; //从第二元素旋转向量 rotate(v.begin(), v.begin() + 2, v.end()); cout << "vector elements after rotating..." << endl; for (int x : v) cout << x << " "; cout << endl; return 0; }
输出结果
vector elements begfore rotating... 10 20 30 40 50 vector elements after rotating... 30 40 50 10 20
参考:C++std::rotate()