STL-sort之结构体排序

来源:互联网 发布:聚划算抢购软件 编辑:程序博客网 时间:2024/05/16 08:41

sort函数的三个参数

第一个;开始值的地址

第二个;结束值的地址

第三个;排序的函数,若没有则默认为升序排列;记住函数return中大于为降序,小于为升序

现在说对结构体数组的排序;

#include<iostream>

#include<algorithm>

using namespacestd;

struct node

{

       int a;

       int b;

       double c;

}arr[100];

bool cmp(node x, node y)//要定义成bool形

{

       if(x.a !=y.a)       return x.a < y.b;

       if(x.b != y.b)      return x.b > y.b;

       return x.c > y.c;

}//先根据a升序排列若相等则根据b来降序排列 否则 按照c降序排列;

sort(arr, arr+90,cmp);//直接加+90而不是作为下标

0 0
原创粉丝点击