728x90
- deque
- 양쪽 끝에서 빠르게 추가와 삭제를 할 수 있는 리스튜류 컨테이너
- 양방향 큐
- 데이터의 회전도 가능!!!!
- maxlen을 설정하여 최대 항목 수를 설정
from collections import deque
a = [10,20,30,40,50]
d = deque(a)
print(d)
# deque([10, 20, 30, 40, 50])
d.append(100)
print(d)
# deque([10, 20, 30, 40, 50, 100]) # 뒤에 추가
d.appendleft(1000)
print(d)
# deque([1000, 10, 20, 30, 40, 50, 100]) # 앞에 추가
temp1 = d.pop()
print(temp1)
print(d)
# 100
# deque([1000, 10, 20, 30, 40, 50]) # 뒤에 삭제
temp2 = d.popleft()
print(temp2)
print(d)
# 1000
# deque([10, 20, 30, 40, 50]) # 앞에 삭제
d.rotate(2)
print(d)
# deque([40, 50, 10, 20, 30]) # 2칸씩 뒤로
d.rotate(-1)
print(d)
# deque([50, 10, 20, 30, 40]) # 음수도 가능
- que의 단점
- 비효율적이다
- 리스트의 맨 앞에서 항목을 삭제하면 그 항목 이후의 모든 항목을 한 칸씩 앞으로 이동
- 비효율적이다
728x90
반응형
'TIL - 프로그래밍 > 개념, 설정' 카테고리의 다른 글
파이썬 버전 관리 (venv, pip, poetry) (0) | 2023.04.26 |
---|---|
python 알고리즘 풀면서 도움이 된 10가지 2. (0) | 2022.07.03 |
python 알고리즘 풀면서 도움이 된 10가지 1. (0) | 2022.04.29 |
[Python] 시간 초과 해결 방법 (0) | 2022.04.23 |
REST API (0) | 2022.04.19 |
댓글