먼저 들어온 데이터가 먼저 나가는 자료구조
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|
A | B | C | |||||||
front | rear |
배열을 선형으로 사용하여 큐를 구현한다.
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|
A | B | C |
⬇
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|
A | B | C |
배열을 원형으로 사용하여 큐를 구현한다.
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|
B | C | A | |||||||
rear | front |
LinkedList로 구현된 큐
A(front
) → B → C(rear
)
front
포인터는 삭제, rear
포인터는 삽입과 관련된다.front
와 rear
는 NULL
= Double-ended queue
큐의 앞단과 뒷단에서 모두 삽입/삭제가 가능한 큐
A(head
) ↔ B ↔ C(tail
)
2개의 스택을 이용하여 큐를 구현할 수 있다.
inbox | outbox |
---|---|
B | A |
A | B |
inbox
에 데이터를 삽입한다.inbox
에 있는 데이터를 꺼내 outbox
에 삽입한다.outbox
에 있는 데이터를 꺼낸다.