Queue
Queue 관련 기록.
Circular Queue
constexpr int MAX_QUEUE = 1'000'000;
template<typename T>
struct Queue {
T q[MAX_QUEUE];
int qf, qr; // queue front, rear
void init() {
qf = qr = 0;
}
bool isEmpty() {
return qf == qr;
}
void insert(T v) {
q[qr++] = v;
qr %= MAX_QUEUE;
}
T pop() {
T res = q[qf++];
qf %= MAX_QUEUE;
return res;
}
};
Time Complexity
- Insert:
- Pop:
이전 사이트에서 옮긴 글입니다. 원래 주소