스택
stack = []
stack.append(a)
stack.pop()
stack[-1]
큐
queue = []
queue.append(a)
queue.pop(0)
queue[0]
힙
- 최소 힙
import heapq
heap = []
heapq.heappush(heap, 1)
heap = [1,2,3]
heapq.heapify(heap)
heapq.heappop(heap)
- 최대 힙
heapq.heappush(heap, (-a, a)) : 튜플의 첫번째 원소, a의 역인 -a를 기준으로 정렬하여 최소 힙을 최대 힙처럼 사용한다
heapq.heappop(heap)[1] : (-a, a)에서 a를 출력
우선순위 큐
from queue import PriorityQueue
pq = PriorityQueue()
pq.put('a')
pq.get()
pq.put((1,'a')) : (우선 순위, 요소)
pq.get()[1]
'알고리즘' 카테고리의 다른 글
[알고리즘] 반복법, 재귀법 개념 이해 (0) | 2022.05.25 |
---|---|
[알고리즘] 정렬 (0) | 2022.05.18 |
[알고리즘] 파이썬 메모 (0) | 2022.05.13 |