21xrx.com
2025-04-04 03:19:43 Friday
文章检索 我的文章 写文章
使用C++中sort对数组进行降序排序
2023-07-05 10:47:09 深夜i     22     0
C++ sort 数组 降序 排序

在C++中,有一个非常好用的排序函数sort,可以对数组进行升序或降序排列。如果你需要将数组按照降序排列,可以使用sort的第三个参数,将sort函数的比较函数传入其中。

下面是一个示例,演示如何使用sort将一个数组按照降序排列:

#include <iostream>
#include <algorithm>
using namespace std;
bool desc(int a, int b)
  return a > b; // 降序排列
int main()
{
  int arr[] = 0;
  int size = sizeof(arr) / sizeof(arr[0]);
  sort(arr, arr + size, desc);
  for (int i = 0; i < size; i++) {
    cout << arr[i] << " ";
  }
  return 0;
}

上面的代码使用了一个名为desc的比较函数,用来指定按照降序排列。在sort函数中,将arr和arr+size(即末尾的迭代器)作为前两个参数传入,最后一个参数则是我们定义的比较函数。输出的结果为:8 6 4 3 2 1 0。

注意,在排序时,必须指定比较函数,否则sort默认按照升序排列。另外,比较函数返回值应该是布尔型,表示是否两个元素应该交换位置。

总之,sort是一个非常强大的排序函数,可以轻松对各种类型的数组进行排序,而且具有很高的灵活性,可以通过比较函数来指定排序的方式。

  
  

评论区