QUEUE : 대기줄, 줄을 짓다.
큐는 선입선출 방식(FIFO: First In First Out)의 자료구조를 뜻한다.
말 그대로 먼저 들어온 데이터를 먼저 연산해주는 구조라고 보면 된다.
(먼저 온 순서대로! 차례대로!)
큐에 끝(Rear)에서 데이터를 추가하는 작업을 enqueue라고 하며 큐의 맨 앞(Front)에서 데이터를 연산하고 제거하는 작업을 dequeue라고 한다.
NAME | RULE |
---|---|
Enqueue | 맨 뒤에 데이터 삽입 |
Dequeue | 맨 앞에 데이터 삭제 |
PeeK | 데이터 참조 |
Front | 맨 앞에 데이터 출력 |
Rear | 맨 뒤에 데이터 출력 |
isEmpty | 큐가 비어있는지 확인 |
대표적으로 큐는 브라우저 환경에서 OS의 스케쥴러에 쓰인다.
어떠한 작업/데이터를 순서대로 실행/사용하기 위해 대기시킬 때 사용한다.
또한 요즘에 식당의 줄이 많을 경우 모바일 줄서기 등도 큐의 방식에 해당된다.
(맛집은 특히 테블릿을 이용하여 줄서기를 하는 경우가 있다.)
큐와 스택을 비교하며 이해하니까 조금 더 수월하게 이해할 수 있었다.
큐를 공부하게 되고나서 자꾸 일상생활에서 큐의 방식이 보이는 경우가 있어서
웃음이 나었다. (맛집 줄서기... 프링글스...)