温馨提示×

vector反向遍历怎么实现

小亿
196
2023-12-12 10:55:44
栏目: 编程语言

要实现向量的反向遍历,可以使用迭代器或者下标方式来实现。

使用迭代器实现反向遍历的步骤如下:

  1. 使用rbegin()方法获取指向向量最后一个元素的迭代器,使用rend()方法获取指向向量第一个元素前一个位置的迭代器。
  2. 使用循环从最后一个元素开始,每次递减迭代器,直到达到第一个元素前一个位置为止。
  3. 在循环中可以使用迭代器*操作符来获取当前元素的值。

示例代码如下:

#include <iostream>
#include <vector>

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

    for (auto it = vec.rbegin(); it != vec.rend(); ++it) {
        std::cout << *it << " ";
    }

    return 0;
}

使用下标方式实现反向遍历的步骤如下:

  1. 使用size()方法获取向量的大小,即元素个数。
  2. 使用循环从最后一个元素开始,每次递减下标,直到达到0为止。
  3. 在循环中可以使用下标操作符[]来获取当前元素的值。

示例代码如下:

#include <iostream>
#include <vector>

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

    for (int i = vec.size() - 1; i >= 0; --i) {
        std::cout << vec[i] << " ";
    }

    return 0;
}

0