우선순위 큐 (Priority Queue)
- 우선순위가 가장 높은 데이터를 가장 먼저 삭제하는 자료구조
- C++, Java, Python 을 포함한 대부분의 프로그래밍 언어에서 표준 라이브러리 형태로 지원
힙 (Heap)
- 우선순위 큐를 구현하기 위해서 사용하는 자료구조 중 하나이다
- 다익스트라 최단 경로 알고리즘을 포함해 다양한 알고리즘에서 사용된다
- 방문하지 않은 노드 중에서 최단 거리가 가장 짧은 노드를 선택하기 위해 힙 자료구조를 이용한다
- 다익스트라 알고리즘이 동작하는 기본원리는 동일하나, 현재 가장 가까운 노드를 저장해 놓기 위해서 힙 자료구조를 추가적으로 이용한다는 점이 다르다.
스택 (Stack)
- 가장 나중에 삽입된 데이터가 가장 먼저 추출된다
큐 (Queue)
- 가장 먼저 삽입된 데이터가 가장 먼저 추출된다