C++ 算法 rotate_copy()2024年8月30日 | 5分钟阅读 C++ 算法 rotate_copy() 函数用于在范围 [first, last) 中创建元素的旋转副本。
语法参数first:一个前向迭代器,指向要旋转的范围中第一个元素的位置。 middle:一个前向迭代器,指向范围 [first, last) 内的元素,该元素被移动到范围中的第一个位置。 last:一个前向迭代器,指向正在反转元素的范围中最后一个元素的后一个位置。 result:一个输出迭代器,指向目标范围中第一个元素的位置。 返回值rotate_copy() 函数返回一个输出迭代器,指向复制范围的末尾。 复杂度复杂度与范围 [first, last) 成线性关系:为每个元素执行一次赋值。 数据竞争访问范围 [first, last) 中的对象。 结果和返回值之间的范围内的对象被更改。 异常如果元素赋值或迭代器上的操作抛出异常,此函数将抛出异常。 注意:无效参数会导致未定义行为。示例 1让我们看一个旋转给定字符串的简单示例 输出 Before Rotate : N I K I T A After Rotate : I K I T A N 示例 2让我们看另一个简单示例 输出 3 4 5 1 2 示例 3让我们看另一个简单示例 输出 Character array s[] : 1. A 2. B 3. C 4. D 5. E 6. F 7. G 8. H Rotate s[] with 'C' as middle element and copy in t[] Character array t[] : 1. C 2. D 3. E 4. F 5. G 6. H 7. A 8. B Rotate t[] with 'A' as middle element and copy in s[] Character array s[] : 1. A 2. B 3. C 4. D 5. E 6. F 7. G 8. H Character array t[] : 1. C 2. D 3. E 4. F 5. G 6. H 7. A 8. B 示例 4让我们看另一个简单示例 输出 Before calling rotate_copy: Try this Tongue Twister: she sells sea shells by the sea shore After calling rotate_copy: Tongue_Twister: she sells sea shells by the sea shore Now try the rotated Tongue Twister: shells by the sea shore she sells sea 下一主题C++ 算法 |
C++ 算法函数 adjacent_find() C++ Algorithm adjacent_find() 函数在范围 [first, last] 上执行搜索操作,以查找两个连续匹配元素的首次出现。如果找到这样的元素,则返回指向这两个元素中第一个元素的迭代器。否则,返回最后一个...
阅读1分钟
C++ 算法函数 count() C++ 算法 count() 函数接受 'val' 作为参数,并比较元素 'val' 在范围内的出现次数。返回该元素的出现次数。语法模板 <class InputIterator, class T> typename iterator_traits<InputIterator>::difference_type count (InputIterator first, InputIterator last, const T& val); 参数 first: 它是一个...
阅读1分钟
C++ 算法 partial_sort_copy() C++ Algorithm partial_sort_copy() 函数与 partial_sort() 函数类似,它用于重新排列范围 [first, last) 中的元素,使得 first 和 middle 之间的元素被排序,而 middle 和 last 之间的元素被...
阅读 8 分钟
C++ 算法 stable_partition() C++ 算法 stable_partition() 函数用于对范围 [first, last) 中的元素进行分类,使得所有 pred 返回 true 的元素都排在所有 pred 返回 false 的元素之前,同时保留元素的相对顺序。注意:...
阅读 4 分钟
C++ 算法 iter_swap() C++ 算法 iter_swap() 交换两个迭代器 a 和 b 所指向的元素。语法模板 <class ForwardIterator1, class ForwardIterator2> void iter_swap (ForwardIterator1 a, ForwardIterator2 b); 参数 a: 要交换值的其中一个前向迭代器。b: 要交换值的第二个前向迭代器...
7 分钟阅读
C++ 算法函数 copy_backward() C++ 算法 copy_backward() 函数用于反向复制元素,它接受三个参数,然后复制属于范围 [first,last] 的元素。元素的复制以反向开始,终止点在 'result'。语法模板 <class BidirectionalIterator1,...
阅读 2 分钟
C++ 算法 swap() 函数 C++ 算法 swap() 函数交换或说互换两个引用容器的值。语法 template<class T> void swap(T& a, T& b); 参数 a: 它是具有某些值的第一个容器。b: 它是具有某些值的另一个容器。返回值 此函数仅交换值...
阅读 2 分钟
C++ 算法函数 move() C++ 算法 move() 函数用于移动元素。它接受三个参数,然后将属于范围 [first,last) 的元素移动到以“result”开头的范围中。语法模板<class InputIterator, class OutputIterator> OutputIterator move(InputIterator first, InputIterator last, OutputIterator result); 参数 first: 它是...
阅读 2 分钟
C++ 算法 stable_sort() C++ 算法 stable_sort() 函数用于将范围 [first, last) 中的元素按升序排序,与 sort 类似,但保持等效元素的顺序。第一个版本使用运算符 < 比较元素,第二个版本使用 comp 比较元素。语法模板 <class...
阅读 6 分钟
C++ 算法 partition() C++ 算法 partition() 函数用于根据其参数中提到的给定谓词(条件)对元素进行分区。如果容器被分区,则此函数返回 true,否则返回 false。语法模板 <class BidirectionalIterator, class UnaryPredicate> BidirectionalIterator partition (BidirectionalIterator first, BidirectionalIterator last, UnaryPredicate...
5 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India