C++ STL std::rotate() 函數
rotate() 函數是算法頭的庫函數,用於在給定範圍內向左旋轉一個序列的元素,它接受範圍(開始,結束)和一個中間點,它以元素的方式旋轉元素中間迭代器指向的成為新的第一個元素。
注意:使用 rotate() 函數 - 包括<algorithm>
標題或者您可以簡單使用<bits/stdc++.h>
頭文件。
std::rotate() 函數的語法
std::rotate(iterator start, iterator middle, iterator end);
參數:
iterator start
- 指向序列第一個元素的迭代器。iterator middle
- 一個迭代器,指向我們想要開始旋轉的中間或任何其他元素。iterator end
- 指向序列最後一個元素的迭代器。
返回值: void
- 它返回注意。
例:
Input: vector<int> v{ 10, 20, 30, 40, 50 }; //rotating vector from 2nd element rotate(v.begin(), v.begin() + 2, v.end()); Output: 30 40 50 10 20
C++ STL程序演示std::rotate()函數的使用
在這個程序中,我們有一個向量,我們正在從 2 旋轉它的元素nd index 。
//C++ STL program to demonstrate use of
//std::rotate() function
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
//main code
int main()
{
//vector
vector<int> v{ 10, 20, 30, 40, 50 };
//printing vector elements
cout << "vector elements begfore rotating..." << endl;
for (int x:v)
cout << x << " ";
cout << endl;
//rotating vector from 2nd element
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()
相關用法
- C++ std::rotate_copy()用法及代碼示例
- C++ std::rank用法及代碼示例
- C++ std::reverse()用法及代碼示例
- C++ std::replace_if()用法及代碼示例
- C++ std::replace_copy_if()用法及代碼示例
- C++ std::replace_copy()用法及代碼示例
- C++ std::replace()用法及代碼示例
- C++ std::remove_cv用法及代碼示例
- C++ std::remove_const用法及代碼示例
- C++ std::remove_volatile用法及代碼示例
- C++ std::reverse_copy用法及代碼示例
- C++ std::max()用法及代碼示例
- C++ std::string::push_back()用法及代碼示例
- C++ std::less_equal用法及代碼示例
- C++ std::is_member_object_pointer模板用法及代碼示例
- C++ std::copy_n()用法及代碼示例
- C++ std::string::insert()用法及代碼示例
- C++ std::is_sorted_until用法及代碼示例
- C++ std::iota用法及代碼示例
- C++ std::numeric_limits::digits用法及代碼示例
注:本文由純淨天空篩選整理自 std::rotate() function with example in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。