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

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)
}