C++ Algorithm rotate()2024年8月30日 | 5分钟阅读 C++ Algorithm rotate() 函数用于旋转范围 [first, last) 内元素的顺序。
语法参数first:一个前向迭代器,指向要旋转的范围中第一个元素的位置。 middle:一个前向迭代器,指向范围 [first, last) 内的元素,该元素将被移动到范围中的第一个位置。 last:一个前向迭代器,指向正在反转元素的范围中最后一个元素的后一个位置。 返回值无 复杂度复杂度与范围 [first, last) 成线性关系:交换或移动元素直到所有元素都被重新定位。 数据竞争范围 [first, last) 中的对象被修改。 异常如果元素交换或移动或迭代器操作抛出异常,则此函数会抛出异常。 请注意,无效参数会导致未定义行为。 示例 1让我们来看一个简单的例子来旋转给定的字符串 输出 Before Rotate : Hello After Rotate : lloHe 示例 2让我们看另一个简单示例 输出 Original order : 1. A 2. B 3. C 4. D 5. E 6. G 7. H Rotate with 'C' as middle element Rotated order : 1. C 2. D 3. E 4. G 5. H 6. A 7. B Rotate with 'G' as middle element Rotated order : 1. G 2. H 3. A 4. B 5. C 6. D 7. E Rotate with 'A' as middle element Original order : 1. B 2. C 3. D 4. E 5. G 6. H 7. A 示例 3让我们看另一个简单示例 输出 Old vector : 1 2 3 4 5 6 7 8 9 New vector after left rotation : 4 5 6 7 8 9 1 2 3 Old vector : 1 2 3 4 5 6 7 8 9 New vector after right rotation : 6 7 8 9 1 2 3 4 5 示例 4让我们看另一个简单示例 输出 Vector v1 is ( -3 -2 -1 0 1 2 3 4 5 ). After rotating, vector v1 is ( 0 1 2 3 4 5 -3 -2 -1 ). The original deque d1 is ( 0 1 2 3 4 5 ). After the rotation of a single deque element to the back, d1 is ( 1 2 3 4 5 0 ). After the rotation of a single deque element to the back, d1 is ( 2 3 4 5 0 1 ). After the rotation of a single deque element to the back, d1 is ( 3 4 5 0 1 2 ). After the rotation of a single deque element to the back, d1 is ( 4 5 0 1 2 3 ). After the rotation of a single deque element to the back, d1 is ( 5 0 1 2 3 4 ). After the rotation of a single deque element to the back, d1 is ( 0 1 2 3 4 5 ). 下一主题C++ 算法 |
C++ 算法 upper_bound() C++ 算法 upper_bound() 函数是二分查找的一种版本。此函数用于返回一个迭代器,指向范围 [first, last) 中第一个大于指定值 val 的元素。第一个版本使用运算符 < 进行比较...
5 分钟阅读
C++ 算法函数 search() C++ 算法 search() 函数在范围 [first1, last1) 中搜索由范围 [first2, last2) 定义的子序列的出现,并返回指向第一个元素的迭代器。如果子序列不存在,则返回指向 last1 的迭代器...
阅读 2 分钟
C++ 算法 stable_sort() C++ 算法 stable_sort() 函数用于将范围 [first, last) 中的元素按升序排序,与 sort 类似,但保持等效元素的顺序。第一个版本使用运算符 < 比较元素,第二个版本使用 comp 比较元素。语法模板 <class...
阅读 6 分钟
介绍:在动态的编程领域,充分利用硬件资源是关键。多线程,即多个线程同时执行,在实现并行性和提升性能方面发挥着至关重要的作用。C++作为一种通用的编程语言,提供了...
7 分钟阅读
C++ 算法 partial_sort() C++ 算法 partial_sort() 函数用于重新排列范围 [first, last) 中的元素,使得 first 和 middle 之间的元素将被排序,而 middle 和 last 之间的元素将处于未指定顺序。这...
阅读 6 分钟
C++ 算法函数 find_end () C++ 算法 find_end() 函数在容器中搜索模式的最后一次出现,或者说在容器中搜索序列小部分的最后一次出现。它基本上搜索 [first1,last1) 指定的范围以查找序列的出现,该序列...
阅读 2 分钟
C++ 算法 transform() C++ 算法 transform() 函数以两种不同的方式使用: 1. 一元操作:- 此方法对范围 [first1, last1] 中的元素执行一元操作 op,并将结果存储在从 result 开始的范围中。此 transform() 将函数应用于范围的每个元素: 2. 二元...
5 分钟阅读
C++ 算法 nth_element() C++ 算法 nth_element() 函数用于将 first 和 nth 元素之间的元素按升序排序,而 nth 和 last 之间的元素则不排序。然而,nth 和 last 之间没有元素小于 first 和...
阅读 6 分钟
C++ 算法函数 move backward () 该函数用于向后移动元素,它接受三个参数,然后移动属于范围 [first,last) 的元素。元素的移动以相反的顺序开始,终止点在“result”处。语法模板<class BidirectionalIterator1,...
阅读 2 分钟
C++ 算法 partition_point() C++ 算法 partition_point() 函数用于返回给定范围中 pred 不为 true 的第一个元素。元素按满足条件的元素排在不满足条件的元素之前的方式排序。语法模板 <class...
5 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India