1、基本数据类型数组的排序
若比较函数不填,默认升序排序。
#include <stdio.h>
#include <algorithm>
using namespace std;
int main()
{
int a[5] = {3,5,2,1,4};
sort(a,a+5);
for(int i=0;i<5;i++)
{
printf("%d",a[i]);
}
return 0;}
输出结果:12345
降序排列,则需要使用cmp函数“告诉”sort何时交换元素,可以这样写:
#include <stdio.h>
#include <algorithm>
using namespace std;
bool cmp(int a,int b)
{
return a>b;//可以理解为a>b时,把a放在前面 }
int main()
{
int a[5] = {3,5,2,1,4};
sort(a,a+5,cmp);
for(int i=0;i<5;i++){
printf("%d",a[i]);
}
return 0;
}
输出结果:54321
这样就可以降序排列,对于double,char亦如此,把cmp内传入参数的类型改变一下。