C++ <list> reverse 函数

C++ 容器类 <list> C++ 容器类 <list>


reverse 是 list 中用于反转链表的函数,是链表特有的高效操作。

reverse 是容器类的成员函数,用于反转链表中元素的顺序。

在 list 中,reverse 的时间复杂度是 O(n),且不会造成元素的移动,只是调整指针。

单词释义reverse 表示"反转",即反转链表的顺序。


基本语法与参数

语法格式

void reverse();

函数说明

  • 返回值void (无返回值)。
  • 效果: 反转链表中元素的顺序。

实例

示例 1:反转链表

实例

#include <iostream>
#include <list>

int main() {
    std::list<int> numbers = {1, 2, 3, 4, 5};

    std::cout << "反转前: ";
    for(int n : numbers) std::cout << n << " ";
    std::cout << std::endl;

    numbers.reverse();

    std::cout << "反转后: ";
    for(int n : numbers) std::cout << n << " ";
    std::cout << std::endl;

    return 0;
}

运行结果预期:

反转前: 1 2 3 4 5
反转后: 5 4 3 2 1

示例 2:再次反转

实例

#include <iostream>
#include <list>

int main() {
    std::list<int> data = {10, 20, 30};

    data.reverse();
    std::cout << "第一次反转: ";
    for(int n : data) std::cout << n << " ";
    std::cout << std::endl;

    data.reverse();
    std::cout << "第二次反转: ";
    for(int n : data) std::cout << n << " ";
    std::cout << std::endl;

    return 0;
}

运行结果预期:

第一次反转: 30 20 10
第二次反转: 10 20 30

C++ 容器类 <list> C++ 容器类 <list>