首先要包含头文件:
#include<algorithm>
using namespace std;
1.sort函数在一维数组排序中的用法
1.1升序:
#include<iostream>
#include <algorithm>
using namespace std;
int main()
{
int a[3]={3,2,1};
int i;
sort(a,a+3);
for(i=0;i<3;i++){
printf("%d ",a[i]);
}
return 0;
}
1.2降序
#include<iostream>
#include <algorithm>
using namespace std;
int cmp( const int &a, const int &b ){
if( a > b )
return 1;
else
return 0;
}
int main()
{
int a[3]={1,2,3};
int i;
sort(a,a+3,cmp);
for(i=0;i<3;i++){
printf("%d ",a[i]);
}
return 0;
}
2.sort函数在结构体排序中的用法
#include<stdio.h>
#include<iostream>
#include<algorithm>
using namespace std;
struct ss
{
int q;
int w;
int e;
};
bool comp(ss a,ss b);
int main()
{
int i;
ss str[3];
for(i=0;i<3;i++){
scanf("%d%d%d",&str[i].q,&str[i].w,&str[i].e);
}
sort(str,str+3,comp);
for(i=0;i<3;i++){
printf("%d %d %d\n",str[i].q,str[i].w,str[i].e);
}
return 0;
}
bool comp(ss a,ss b)
{
return a.q>b.q;//降序
//return a.q<b.q 升序
}