- 스택과 마찬가지로 삽입과 삭제의 위치가 제한적인 자료구조
- 큐의 뒤에서는 삽입만 하고, 큐의 앞에서는 삭제만 이루어지는 구조.
- 선입선출 (FIFO)
- BFS에서 활용
* null일 경우 예외 처리 하지 않는다. null일 때 예외처리 하고 싶다면 remove 사용해라!
공백 큐 생성 | enQueue 원소 삽입 | deQueue 원소 삭제 | |
---|---|---|---|
front | -1 | 그대로 | +=1 |
rear | -1 | +=1 | 그대로 |
LinkedList 클래스를 Queue 인터페이스의 구현체로 많이 사용
데이터를 한 곳에서 다른 한 곳으로 전송하는 동안 일시적으로 그 데이터를 보관하는 메모리의 영역
순서대로 입출력/전달되어야 하므로 FIFO 자료구조인 큐가 활용된다.
- 우선순위를 가진 항목들을 저장하는 큐
- 선입선출 순서가 아니라 우선순위가 높은 순서대로 먼저 나가게 된다.
Heap 자료구조
최대 Heap
최소 Heap