C++vector排序
时间: 2023-08-24 10:06:49 浏览: 120
你可以使用C++的标准库中的`std::sort()`对`vector`进行排序。`std::sort()`函数需要两个迭代器作为参数,表示待排序的范围。以下是一个示例代码:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
int main() {
std::vector<int> numbers = {5, 2, 9, 1, 3};
// 使用std::sort()函数对vector进行排序
std::sort(numbers.begin(), numbers.end());
// 输出排序后的结果
for (int num : numbers) {
std::cout << num << " ";
}
return 0;
}
```
这段代码将输出:1 2 3 5 9,即对`numbers`中的元素进行升序排序。你可以根据需要修改代码来适应不同的数据类型和排序方式。
相关问题
C++vector数组范围排序
您可以使用C++ STL库中的sort函数对vector数组进行排序。以下是示例代码:
```c++
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector<int> vec = { 5, 3, 1, 4, 2 };
// 对vector数组进行排序
sort(vec.begin(), vec.end());
// 输出排序后的数组
for (auto i : vec)
{
cout << i << " ";
}
return 0;
}
```
输出结果为:1 2 3 4 5。
c++如何对vector排序?
C++中可以使用`std::sort()`函数对`vector`进行排序。`std::sort()`函数的头文件为`#include<algorithm>`,其调用方式为:
```c++
std::sort(vector.begin(), vector.end());
```
其中`vector.begin()`和`vector.end()`分别返回指向`vector`第一个元素和最后一个元素下一个位置的迭代器。如果需要对`vector`进行降序排序,则可以使用`std::greater<>()`函数对象,如下所示:
```c++
std::sort(vector.begin(), vector.end(), std::greater<>());
```
另外,如果需要按照自定义的方式进行排序,则可以自定义一个比较函数,在`std::sort()`函数中传入该比较函数,如下所示:
```c++
bool myCompare(int a, int b) {
return a > b;
}
std::sort(vector.begin(), vector.end(), myCompare);
```
以上是对整型`vector`的排序,对于其他类型的`vector`,只需将比较函数中的`>`替换为该类型的比较方式即可。
阅读全文
相关推荐














