Data Structure/Linear

[Java / 자료구조] 데크(Deque)

Dev_Green 2023. 2. 1. 21:24

Deque의 개념

Deque(double-ended queue)는 양방향에서 데이터를 처리할 수 있는 선형 자료구조이다.

Deque의 조상은 Queue이며, 구현체로는 ArrayDeque와 LinkedList 등이 있다.

Deque = Stack + Queue

덱은 스택과 큐를 하나로 합쳐놓은 것과 같으므로 스택으로 사용할 수도 있고, 큐로 사용할 수도 있다.

Deque Stack Queue
offerLast() push() offer()
pollLast() pop() -
pollFirst() - poll()
peekFirst() - peek()
peekLast() peek() -

관련 Java 메서드

삽입 / 제거

기타

  • removeFirstOccurence(Obect O) - 덱의 앞쪽에서부터 탐색하여 매개변수와 동일한 첫 요소 삭제
  • removeLastOccurence(Object O) - 덱의 뒤쪽에서부터 탐색하여 매개변수와 동일한 첫 요소 삭제
  • addAll(Collection c) - c의 모든 데이터를 덱의 뒤쪽에 삽입
  • contain(Object O) - 매개변수와 동일한 요소가 포함되어 있는지 여부 반환