지난 시간에 이어 큐에 대해 알아보는 첫번째 시간을 갖도록 하겠습니다.
큐 이야기
(가) 연말입니다. 오늘은 최근에 은행에 사람들이 많네요. 줄이 끝나지 않습니다. 한사람이 업무를 처리하고 빠지면 뒤에 또 다른 사람이 업무를 보기 위해 다시 줄을 서게 됩니다.
(나) 출력을 위한 프린터를 테스트하기 위해서 여러가지 작업을 한꺼번에 출력을 했습니다.
대기문서에 몇개의 작업이 있네요.
테스트 페이지가 2개가 있네요. 큐에 2개 문서가 있다고 합니다.
큐(Queue) 란 무엇인가?
컴퓨터에서 기본적인 자료를 처리하는 구조 중의 하나를 말합니다.
큐는 이런 형태를 가졌습니다.
큐는 데이터나 나오는 전방과 그리고 데이터가 들어오는 후방이 있습니다.
스택이 데이터가 들어가고 나오는 곳이 같은 곳이었다면 큐는 다른 형태를 가지고 있습니다.
큐는 들어오는 곳과 나오는 곳이 다릅니다.
줄의 앞쪽 부분 큐에 있던 데이터가 나오는 부분을 Front(프론트)이라 하고,
줄의 뒤쪽 부분 큐에 데이터가 들어가는 쪽 부분을 REAR(레어)라 합니다.
영어로 Front는 앞쪽 REAR는 뒤쪽이라는 뜻을 가지고 있어요.
큐에서의 삽입과 삭제
은행에 창구 앞에 10명의 사람이 서 있습니다.
한명이 업무를 마치면 기다리는 사람은 9명이 됩니다.
큐에서의 삭제
큐의 데이터를 처리하는 곳에서 업무가 끝나 큐의 가장 앞에 FRONT에서 하나의 데이터가 빠져나갑니다.
데이터가 10개가 있었다면 이제 큐의 내의 데이터는 9개가 됩니다.
큐에서는 이를 전문 용어로 dequeue(디큐)라고 부릅니다.
큐에서의 삽입
큐의 데이터를 처리하는 곳에 9개의 데이터가 있습니다. 또 다른 곳에서 처리를 요청하는 데이터가 후방(REAR)로 들어옵니다. 이제 큐에 데이터는 10개가 되었습니다.
큐에서는 데이터가 들어오는 것을 이를 enqueue(인큐)라고 부릅니다.
데이터가 꽉 차 있거나? 데이터가 비어 있는 경우
오버플로우(Overflow)
데이터를 후방(REAR)에 넣으려고 하는데 큐가 꽉 차서 넣을 수 없을 때, 이때 우린 이를 Overflow(오버 플로우)라고 할께요.
언더플로우(Underflow)
큐에 데이터가 비어 있어 큐에서 데이터를 꺼낼 수 없을 때, 이때는 언더플로우(Underflow)라고 할께요.
오늘 하루도 수고하셨습니다. 열공하세요. 화이팅!!! ^^
하나님이 세상을 이처럼 사랑하사 독생자를 주셨으니 이는 그를 믿는 자마다 멸망하지 않고 영생을 얻게 하려 하심이라(요3:16)
'자료구조&알고리즘' 카테고리의 다른 글
[자료구조] 기본 개념 익히기 1 - 스택(STACK) (0) | 2016.06.03 |
---|