C++ Algorithm reverse()

30 Aug 2024 | 3 分钟阅读

C++ Algorithm reverse() 函数用于反转范围 [first, last) 内元素的顺序。

语法

注意:双向迭代器是一种用于以向前和向后两个方向访问容器中任何元素的迭代器。

参数

first:一个双向迭代器,指向要反转元素范围中的第一个元素的位置。

last:一个前向迭代器,指向正在反转元素的范围中最后一个元素的后一个位置。

返回值

复杂度

复杂度与范围 [first, last) 呈线性关系:交换元素。

数据竞争

范围 [first, last) 中的对象被修改。

异常

如果元素被交换或迭代器上的操作抛出异常,此函数将抛出异常。

注意:无效参数会导致未定义行为。

示例 1

让我们看一个简单的例子来反转给定的字符串

输出

Before Reverse : Hello Myself Nikita
After Reverse   : atikiN flesyM olleH

示例 2

让我们再看一个简单的例子来反转数字范围

输出

The original vector v1 is:
 ( 0 1 2 3 4 5 6 7 8 9 ).
The modified vector v1 with values reversed is:
 ( 9 8 7 6 5 4 3 2 1 0 ).

示例 3

让我们看另一个简单示例

输出

Before: 10 11 12 13 14 15 16 17 

Reverse only from index 5 to 7 in array:
10 11 12 13 14 17 16 15 
Reverse full array:
7654

示例 4

让我们看另一个简单示例

输出

Original order : 1. George  2.  John  3.   Nik  4. Alice  5.   Bob  6. Watson  

Reversing the order ....
Reversed order : 1. Watson  2.   Bob  3. Alice  4.   Nik  5.  John  6. George  

下一主题C++ 算法