21xrx.com
2025-03-27 08:45:18 Thursday
文章检索 我的文章 写文章
C++中如何对数组进行排序
2023-07-01 17:45:59 深夜i     24     0
C++ 数组 排序 算法 STL

在C++中,我们可以使用标准库中的sort函数对数组进行排序。sort函数可以对数组进行升序或降序排序。

对一个数组进行升序排序的语法如下:

sort(arrayName, arrayName + sizeOfArray);

其中,arrayName表示数组的名称,sizeOfArray表示数组的大小,即数组中元素的个数。

对一个数组进行降序排序的语法如下:

sort(arrayName, arrayName + sizeOfArray, greater<int>());

在这个语法中,greater ()为一个函数对象,表示按照降序排列。

下面给出一个完整的程序示例:

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
  int arr[] = 3;
  int n = sizeof(arr)/sizeof(arr[0]);
  //升序排序
  sort(arr, arr + n);
  cout << "升序排序的结果:" << endl;
  for (int i = 0; i < n; i++)
    cout << arr[i] << " ";
  //降序排序
  sort(arr, arr + n, greater<int>());
  cout << endl << "降序排序的结果:" << endl;
  for (int i = 0; i < n; i++)
    cout << arr[i] << " ";
  return 0;
}

运行结果如下:

升序排序的结果:
1 2 3 5 6 8
降序排序的结果:
8 6 5 3 2 1

可以看到,sort函数对数组进行排序非常方便和高效。需要注意的一点是,sort函数使用的是快速排序,时间复杂度为O(N*logN)。在排序大量数据时,可能会对程序的运行效率造成影响,需要使用其他算法进行优化。

  
  

评论区

请求出错了