关于优先队列的学习
#include <iostream>
#include <queue>
#include <vector>
using namespace std;
struct cmp1{ //按从小到大的排序
bool operator ()(int &a,int &b){
return a>b;
}
};
int main(){
int i;
priority_queue<int>que; //默认级优先队列,默认从大到小排序
priority_queue<int,vector<int>,cmp1>que2; //自定义一个排序规则,为cmp1,b为先排,a放后面
int a[]={14,10,56,7,83,22,36,91,3,47,72,0};
for(i=0;i<10;i++)
que.push(a[i]);
for(i=0;i<10;i++){
cout << que.top() << endl;
que.pop();
}
for(i=0;i<10;i++)
que2.push(a[i]);
for(i=0;i<10;i++){
cout << que2.top() << endl;
que2.pop();}
return 0;
}