본문 바로가기
Programming/자료구조 & STL

<자료구조> 큐, Queue의 개념

by 황금표정 2012. 6. 10.

원본출처 : http://blog.nextcube.pe.kr/entry/파일구조-2-큐Queue

 

1.개요
큐는 재일 먼저에 삽입된 데이터가 재일 먼저 출력된다는 First In, First Out ; FIFO;선입선출의 파일구조.


2. 설명


 

1. 큐는 옆으로 된 입구와 출구가 따로있는 파란색 상자입니다.
거게이 1번과 2번 3번 상자를 순서대로 넣습니다.


 

2. 첫번재로 1번상자를 넣습니다.
1번상자는 큐의 입구로 들어가서 출구에서 대기하게됩니다.


 


3. 두번재로 2번상자가 큐의 입구로 들어가서 1번상자 뒤에 대기합니다.


 


 

4. 마지막으로 3번상자가 큐에 입구로 들어가게 되면 큐라는 파란색 상자는 꽉차게 됩니다.


 


 

5. 이제 데이터를 출력해봅시다.
큐에 맨처음 들어와서 출구에 대기중인 1번상자를 출력합니다.


 


 

6. 1번상자 다음으로 들어왔던 2번상자가 출력됩니다.



 


 

7. 마지막에 들어왔던 3번상자가 재일 마지막에 출력됩니다.


3. 알고리즘
Front : 큐의 맨앞의 출구에서 대기중인 데이터를 가르킵니다.
Rear : 큐의 맨마지막에서 대기중인 데이터를 가르킵니다.


 



Dequeue();
큐의 맨앞 출구에서 대기중인 자료를 출력합니다.



 

Enqueue();

큐에 자료를 삽입합니다.



4. Queue Underflow 와 Queue Overflow
스택과 마찬가지로 큐에도 Underflow 와 Overflow 가 존재

Queue Underflow
아무것도 없는 큐에서 Dequeue(); 로 데이터를 출력하려는 경우



Queue Overflow
이미 꽉찬 큐에 Enqueue(); 로 데이터를 삽입하려는 경우

반응형

'Programming > 자료구조 & STL' 카테고리의 다른 글

<자료구조> 스택, Stack의 개념  (0) 2012.06.10
STL - 컨테이너  (3) 2012.01.31