2

[자료구조&알고리즘] 환형 큐

※ 환형 큐 (Circular Queues) : 정해진 저장 공간을 원 모양으로 돌려가며 이용 - 자료를 생성하는 작업과 그 자료를 이용하는 작업이 비동기적으로(asynchronously) 일어나는 경우 큐를 활용한다 - 자료를 생성하는 작업이 여러 곳에서 일어나는 경우 - 자료를 이용하는 작업이 여러 곳에서 일어나는 경우 - 자료를 생성하는 작업과 그 자료를 이용하는 작업이 양쪽 다 여러 곳에서 일어나는 경우 - 자료를 처리해 새로운 자료 생성하고, 나중에 그 자료를 또 처리해야 하는 작업인 경우 유의점으로는 큐가 가득 차게 될 경우 => 더이상 원소를 넣을 수 없다 이를 위해 큐에 데이터 원소가 가득 차 있는지 확인 할 수 있는 isFull() 연산이 있음

[자료구조&알고리즘] 큐

※ 큐 (Queues) :FIFO(선입선출) 특징을 가지는 선형구조 - 스택과 더불어 매우 빈번하게 이용되는 자료구조, 데이터 원소를 한 줄로 늘어세우는 자료 구조 선형(Linear)구조임. 하지만 넣을 때에는 한 쪽 끝에서 밀어 넣어야 하고[인큐(enqueue)연산] 꺼낼 때에는 반대 쪽에서 뽑아 꺼내야 하는 제약이 있음[디큐(dequeue)연산]. 연산의 정의 size() - 현재 큐에 들어 있는 데이터 원소의 수를 구함 isEmpty() - 현재 큐가 비어있는지를 판단 enqueue() - 데이터 원소 x를 큐에 추가 dequeue() - 큐의 맨 앞에 저장된 데이터 원소를 제거 혹은 반환 peek() - 큐의 맨 앞에 저장된 데이터 원소를 반환 (제거하지는 않음)