21xrx.com
2024-12-23 00:07:02 Monday
登录
文章检索 我的文章 写文章
C++中如何对数组进行排序
2023-07-01 17:45:59 深夜i     --     --
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)。在排序大量数据时,可能会对程序的运行效率造成影响,需要使用其他算法进行优化。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复