summaryrefslogtreecommitdiff
path: root/datastructures/stlPQ.cpp
blob: b48223bab1eca81c56cea8c01c454d3070b4c44d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <ext/pb_ds/priority_queue.hpp>
template<typename T>
// greater<T> für Min-Queue
using priorityQueue = __gnu_pbds::priority_queue<T, less<T>>;

int main() {
	priorityQueue<int> pq;
	auto it = pq.push(5); // O(1)
	pq.push(7);
	pq.pop(); // O(log n) amortisiert
	pq.modify(it, 6); // O(log n) amortisiert
	pq.erase(it); // O(log n) amortisiert
	priorityQueue<int> pq2;
	pq.join(pq2); // O(1)
}