结构体排序(优先级)

来源:互联网 发布:淘宝双肩包店推荐 编辑:程序博客网 时间:2024/05/22 01:36

这个记性也是差的,老是忘记,现在直接贴这里,就不怕忘记了。

测试数据在当中,结果在最后面

先按a排序(升序),a相等的时候按b排序(降序)

#include<stdio.h>#include<algorithm>using namespace std;#define MAX 100struct Node{int a;int b;}node[MAX];bool cmp(Node x,Node y){if(x.a==y.a){return x.b>y.b;}elsereturn x.a<y.a;}//n 8//a 1 2 3 6 8 7 7 7//b 2 3 4 4 9 5 6 10int main(){int n,i;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d %d",&node[i].a,&node[i].b);for(i=0;i<n;i++)printf("a=%d  b=%d\n",node[i].a,node[i].b);printf("\n\n--------\n\n");sort(node,node+n,cmp);for(i=0;i<n;i++)printf("a=%d  b=%d\n",node[i].a,node[i].b);return 0;}a=1  b=2a=2  b=3a=3  b=4a=6  b=4a=8  b=9a=7  b=5a=7  b=6a=7  b=10--------a=1  b=2a=2  b=3a=3  b=4a=6  b=4a=7  b=10a=7  b=6a=7  b=5a=8  b=9


0 0
原创粉丝点击