Queue: FIFO (First In First Out)
성질
- 원소 추가 O(1) , 제거 O(1)
- 제일 앞/뒤 원소 확인 O(1)
- 나머지 원소 확인 변경이 원칙적으로 불가
// 큐의 원소가 들어가는 배열을 원형으로 만들어서 불필요한 공간낭비를 줄임.
const int MX=10000005;
int dat[MX];
int head=0, tail=0;
void push(int x){
dat[tail++] = x;
}
void pop(){
head++;
}
int front() {
return dat[head];
}
int back() {
return dat[tail];
}
void test() {
push(10); push(20); push(30);
cout << front() << '\\n'; // 10
cout << back() << '\\n'; // 30
pop(); pop();
push(15); push(25);
cout << front() << '\\n'; // 30
cout << back() << '\\n'; // 25
}
int main(void){
test();
}
STL Queue
문제 현황