C++标准库中rotate函数的用法

avatar
作者
猴君
阅读量:0

rotate函数是C++标准库中的一个算法函数,用于将指定范围内的元素进行旋转操作。其原型如下:

template <class ForwardIterator> void rotate (ForwardIterator first, ForwardIterator middle, ForwardIterator last); 

其中,first为要进行旋转操作的范围的起始位置,middle为旋转的中间位置,last为范围的结束位置。

例如,对于一个数组{1, 2, 3, 4, 5},如果我们想要将数组进行旋转,使得数组变为{4, 5, 1, 2, 3},可以使用rotate函数:

#include <algorithm> #include <iostream> #include <vector>  int main() {     std::vector<int> vec = {1, 2, 3, 4, 5};          std::rotate(vec.begin(), vec.begin() + 3, vec.end());          for (int i : vec) {         std::cout << i << " ";     }          return 0; } 

上述代码会输出4 5 1 2 3,即将数组中的元素进行了旋转操作。

rotate函数的时间复杂度为O(n),其中n为旋转范围内元素的个数。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!