피드로 돌아가기
Implement Queue Using Array
Dev.toDev.to
Backend

Array 기반 FIFO 큐 구현을 통한 데이터 관리 구조 설계

Implement Queue Using Array

Jaspreet singh2026년 6월 24일2beginner

Context

ArrayList 기반의 기본 삽입/삭제 구조에서 발생하는 데이터 시프팅 오버헤드 분석. FIFO 원칙 준수를 위한 배열 기반 Queue 구현의 효율성 검토.

Technical Solution

  • 고정 크기 배열(Fixed-size Array)을 통한 메모리 공간 사전 할당
  • size 변수를 활용한 데이터 삽입 위치 추적 및 Enqueue O(1) 달성
  • Dequeue 발생 시 전방 요소를 삭제하고 나머지 요소를 왼쪽으로 이동시키는 Shifting 로직 적용
  • getFront 및 getRear 메서드를 통한 인덱스 직접 참조 방식으로 조회 성능 최적화
  • isEmpty와 isFull 상태 체크 로직을 통한 Buffer Overflow 및 Underflow 방지 설계

1. Dequeue 시 발생하는 O(N) 시프팅 비용이 서비스 성능에 미치는 영향 분석

2. 고정 크기 배열 사용 시 데이터 증가량에 따른 Array 크기 산정 적절성 검토

3. 시간 복잡도 개선을 위해 Circular Queue 구조로의 전환 가능성 고려

원문 읽기