c++ vector 倒序
时间: 2023-10-23 08:10:31 浏览: 186
使用`std::reverse`函数可以将`vector`进行倒序操作。以下是示例代码:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
int main() {
std::vector<int> nums = {1, 2, 3, 4, 5};
std::reverse(nums.begin(), nums.end());
for (const auto& num : nums) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
5 4 3 2 1
```
相关问题
std::vector倒序
std::vector是C++ STL中的一个容器,可以存储任意类型的元素。在使用std::vector时,我们可以使用rbegin()和rend()方法进行倒序迭代。其中,rbegin()返回一个指向最后一个元素的迭代器,rend()返回一个指向第一个元素之前的迭代器。在倒序遍历时,迭代器也是使用++操作符进行移动,而不是--操作符。下面是一个例子:
std::vector<int> vValue;
vValue.push_back(1);
vValue.push_back(2);
vValue.push_back(3);
std::vector<int>::reverse_iterator rit = vValue.rbegin();
for (; rit != vValue.rend(); ++rit) {
int nValue = *rit;
// 对倒序遍历的元素进行操作
}
数组初始化vector 倒序
在C++中,如果你想要初始化并倒序一个`std::vector`,你可以这样做:
```cpp
#include <iostream>
#include <vector>
#include <algorithm> // 包含sort函数
int main() {
std::vector<int> vec = {5, 3, 8, 1, 9}; // 初始化一个整数向量
// 首先对vector进行排序,这里我们按降序排列
std::sort(vec.rbegin(), vec.rend()); // 使用reverse_iterator进行倒序
// 现在vec就是倒序的
for (const auto& num : vec) {
std::cout << num << " ";
}
std::cout << "\n";
return 0;
}
```
在这个例子中,`vec.rbegin()`返回一个reverse_iterator,它从向量的末尾开始向前遍历,而`vec.rend()`则指向向量的第一个元素。`std::sort`函数会按照这个逆序迭代器进行操作,实现倒序的效果。
阅读全文