더북(TheBook)

5.3 덱: 스택으로도 큐로도 사용할 수 있는 덱

스택, 큐와 비슷한 자료 구조로 덱이 있습니다. 덱(deque)은 double-ended queue의 약어입니다. 큐와 매우 친할 것 같은 느낌이군요. 스택은 top이 있는 방향으로만 데이터를 입력하고 출력할 수 있습니다. 큐는 front가 있는 방향으로는 데이터를 출력하고, rear가 있는 방향으로는 데이터를 입력하지요. 한 방향에서 하나의 입출력 연산 중 오직 하나만 가능합니다. 이에 비해 덱은 front와 rear에서 입출력이 모두 가능합니다. 즉, front에서도 데이터 입출력이 가능하고 rear에서도 데이터 입출력이 가능합니다. 먼저 덱의 ADT를 알아볼까요?

Deque

- Operation

1. is_empty( ) -> Boolean

: 덱이 비어 있으면 TRUE, 아니면 FALSE 반환

2. is_full( ) -> Boolean

: 덱이 가득 찼으면 TRUE, 아니면 FALSE 반환

3. insertFront(data)

: 덱의 맨 앞에 데이터 삽입

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.