관련 문제: 프로그래머스 2018 KAKAO BLIND RECRUITMENT [1차] 캐시
from collections import deque
dq = deque([1, 2, 3], maxlen=5)
print("초기 deque:", dq)
dq.appendleft(0)
print("appendleft(0):", dq)
dq.extendleft([-2, -1])
print("extendleft([-2, -1]):", dq)
dq.rotate(2)
print("rotate(2):", dq)
dq.append(99)
print("append(99):", dq)
"""
1. 고정 크기 슬라이딩 윈도우 처리 → maxlen 사용
2. 앞/뒤에서 빠른 삽입/삭제 → appendleft, popleft, append, pop
3. 최근 데이터 제한 기록 저장소 → maxlen + append
4. 순서 반전하여 앞에서 삽입 필요할 때 → extendleft
5. 큐/스택/원형 회전 큐 구현 → rotate
6. 시간 복잡도 효율적 자료구조 필요할 때 → O(1) 삽입/삭제가 가능한 deque 활용
"""