#include<iostream>
#include<queue>
#include<vector>
#include<ctime>
using namespace std;
struct Data {
Data(int a, int b) {
x = a;
y = b;
}
int x;
int y;
bool operator<(const Data& b) const
{
return this->x > b.x;
}
};
struct cmp {
bool operator()(Data a, Data b) {
return a.x > b.x;
}
};
int main() {
vector<Data> vec;
srand(time(0));
for (int i = 0; i < 100; i++) {
Data temp(rand(), rand());
vec.push_back(temp);
}
priority_queue<Data> priQueue;
//priority_queue<Data,vector<Data>,cam> priQueue; 这种也可
for (int i = 0; i < vec.size(); i++) {
priQueue.push(vec[i]);
}
while (!priQueue.empty()){
cout << priQueue.top().x << " " << priQueue.top().y << endl;
priQueue.pop();
}
}
C++:二项队列priority_queue
最新推荐文章于 2022-07-20 22:40:17 发布