此队列存在最大值优先级队列,最小值优先级队列,在开发中可以做一些特殊的应用。添加的数据会最大值优先排列或最小优先排列。
- #include <queue>
//最大值优先队列
- priority_queue<int> p1; //默认是 最大值优先级队列
- priority_queue<int, vector<int>, less<int> > p1;
//priority_queue<int> p;
priority_queue<int, vector<int>, less<int>> p;
p.push(3);
p.push(8);
p.push(1);
p.push(6);
p.push(9);
cout << "最大值优先级队列:" << "";
while (p.size()>0)
{
int num = p.top();
cout << num <<" ";
p.pop();
}
cout << endl;
//最小值优先队列
- priority_queue<int, vector<int>, greater<int>> p2; //最小值优先级队列
priority_queue<int, vector<int>, greater<int>> p;
p.push(3);
p.push(8);
p.push(1);
p.push(6);
p.push(9);
cout << "最小值优先级队列:" << "";
while (p.size() > 0)
{
int num = p.top();
cout << num << " ";
p.pop();
}
cout << endl;