c++sort给数组排序
时间: 2024-09-08 20:03:59 浏览: 72
C++ 先对数组排序,在进行折半查找
`std::sort`是C++标准库中的一个函数,用于对序列进行排序。它定义在`<algorithm>`头文件中,可以对数组、`std::vector`或其他支持随机访问迭代器的容器中的元素进行排序。`std::sort`默认使用快速排序算法,但具体实现可能根据编译器的不同而有所不同。它可以进行升序或降序排序,也可以通过自定义比较函数来执行复杂的排序逻辑。
使用`std::sort`对数组进行排序的基本语法如下:
```cpp
#include <algorithm> // 引入算法库
// 用于定义排序规则的比较函数
bool compare(int a, int b) {
return a < b; // 升序排序
}
int main() {
int arr[] = {5, 2, 8, 6, 3, 9};
size_t n = sizeof(arr) / sizeof(arr[0]); // 数组元素的个数
// 使用默认的升序排序
std::sort(arr, arr + n);
// 如果要进行降序排序,可以使用std::greater<T>作为比较函数
std::sort(arr, arr + n, std::greater<int>());
// 如果要使用自定义的比较函数进行排序
std::sort(arr, arr + n, compare);
// ... 其他代码 ...
return 0;
}
```
在上述代码中,`std::sort`的第二个和第三个参数是可选的。第二个参数是一个指向要排序范围末尾的迭代器,表示排序的结束位置。第三个参数是一个比较函数,用于定义元素之间的排序规则。如果没有提供比较函数,那么默认使用`<`运算符进行升序排序。
阅读全文