Repository logo Repository

1. Queue의 정의 및 핵심 원리


2. 주요 연산 및 시간 복잡도

큐의 양 끝에서 데이터 작업이 이루어지므로 연산 속도가 매우 빠름.

연산 (Operation) 설명 시간 복잡도
Enqueue 큐의 맨 뒤(Rear)에 새로운 데이터를 추가하는 작업. O(1)
Dequeue 큐의 맨 앞(Front)에서 데이터를 추출 및 삭제하는 작업. O(1)

3. 구현 방식에 따른 차이점

메모리 활용 및 성능 특성에 따라 두 가지 방식으로 구현 가능.

Array-Based Queue (배열 기반)

List-Based Queue (연결 리스트 기반)


4. 확장 및 실제 활용 사례

확장된 자료구조

활용 예시


5. 추가 정리

Q. Array-Base와 List-Base 중 어느 것이 더 효율적인가?


정리


출처

  1. Pat Morin, Open Data Structures - Array-Based Lists https://opendatastructures.org/versions/edition-0.1e/ods-java/2_Array_Based_Lists.html
  2. Pat Morin, Open Data Structures - Linked Lists https://opendatastructures.org/versions/edition-0.1e/ods-java/3_Linked_Lists.html
  3. Python Documentation, collections.deque https://docs.python.org/3/library/collections.html#collections.deque

Queue 2개로 Stack 구현 »