일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- Algorithm
- redis
- db
- nosql
- 알고리즘
- Data structure
- javascript
- 완전탐색
- 플로이드-워셜 알고리즘
- 데이터베이스
- OS
- java
- HTML
- BFS
- 아키텍처
- 레디스
- It
- 프로그래머스
- Dijkstra
- CSS
- 영속성 컨텍스트
- 백준
- DFS
- CS
- deque
- 자료구조
- PYTHON
- jpa
- 운영체제
- 캐싱
Archives
- Today
- Total
If at first you don't succeed, try again
[자료구조] Deque(덱)(Python) 본문
* 개요
Deque(덱)은 단뱡향으로만 데이터의 삽입 / 삭제가 가능했던 큐와는 달리 양방향으로 데이터의 삽입 / 삭제가 가능한 자료구조이다. 즉, 스택으로도 쓸 수 있고, 큐로도 쓸 수 있다는 장점이 있다. 리스트 자료형이 있는데, 덱을 많이 사용하는 이유는 리스트보다 덱의 속도가 훨씬 빠르기 때문이다. 리스트는 O(N), 덱은 O(1)의 시간 복잡도를 가진다.
* 파이썬으로 구현한 덱
deque 모듈을 활용하여 덱을 구현하였다.
from collections import deque
queue = []
dq = deque(queue)
dq.append(1) # 1
dq.append(2) # 1 2
dq.append(3) # 1 2 3
dq.appendleft(0) # 0 1 2 3
dq.pop() # 0 1 2
dq.popleft() # 1 2
print(dq)
'Computer Science > 자료구조(Python)' 카테고리의 다른 글
[자료구조] Tree(트리)(Python) (0) | 2022.11.14 |
---|---|
[자료구조] Hash Table(해시 테이블)(Python) (0) | 2022.11.10 |
[자료구조] Circular Queue(원형 큐)(Python) (0) | 2022.11.07 |
[자료구조] Priority Queue(우선순위 큐)(Python) (0) | 2022.11.06 |
[자료구조] Queue(큐)(Python) (0) | 2022.11.04 |