#include<stdio.h>
#include<functional>
#include<queue>
#include<vector>
#include<iostream>
#include<algorithm>
using namespace std;
struct ss
{
int a,b;
};
bool comp(const ss &x,const ss &y)
{
return x.a<y.a;
}
struct comp1
{
bool operator()(ss &x,ss &y)
{
return x.a<y.a;
}
};
int main()
{
vector<ss>v;
ss s1,s2,s3,s4,s5;
s1.a=4;
s1.b=23;
s2.a=1;
s2.b=213;
s3.a=2;
s3.b=231;
s4.a=5;
s4.b=123;
s5.a=3;
s5.b=223;
v.push_back(s1);
v.push_back(s2);
v.push_back(s3);
v.push_back(s4);
v.push_back(s5);
sort(v.begin(),v.end(),comp);
cout<<"vector sort:"<<endl;
int i=0;
for(i=0; i<5; i++)
{
cout<<v[i].a<<" "<<v[i].b<<endl;
}
priority_queue<ss,vector<ss>,comp1>que;
ss cur;
que.push(s1);
que.push(s2);
que.push(s3);
que.push(s4);
que.push(s5);
cout<<"priority:"<<endl;
while(que.size())
{
cur=que.top();
que.pop();
cout<<cur.a<<" "<<cur.b<<endl;
}
return 0;
}
vector结构体排序与priority优先级队列自动排序对比
最新推荐文章于 2022-06-11 14:03:14 发布