std模版库 队列、优先队列、双端队列
queue为单端队列
deque为双端队列
priority_queue为优先队列
#include <iostream>
#include <queue>
#include <vector>
using namespace std;
//priority_queue<int, vector<int>, less<int>> // 最大堆 默认为对大堆 也即和 priority_queue<int> 等价
//priority_queue<int, vector<int>, greater<int>> // 最小堆
int main()
{
vector<int> vec = {1, 2, 3, 4};
deque<int> dq;
queue<int> q;
priority_queue<int> maxq;
priority_queue<int, vector<int>, greater<int>> minq;
maxq.push(1);
maxq.push(2);
minq.push(1);
minq.push(2);
cout << "maxq top = " << maxq.top() << endl;
cout << "minq top = " << minq.top() << endl;
return 0;
}
maxq top = 2
minq top = 1