A priority queue is an abstract datatype. It is a shorthand way of describing a particular interface and behavior, and says nothing about the underlying implementation.
A heap is a data structure. It is a name for a particular way of storing data that makes certain operations very efficient.
It just so happens that a heap is a very good data structure to implement a priority queue, because the operations which are made efficient by the heap data strucure are the operations that the priority queue interface needs.
우선순위 큐는 추상적인 자료형이다. 이것은 특정 interface와 행동을 설명하는 축약된 방식이고, 기본 구현에 대해서는 말하지 않는다.
힙은 자료구조이다. 이것은 특정한 작업에서 매우 효율적으로 만드는 데이터 저장 방법의 이름이다. 힙 자료구조에 의해 효율적으로 만들어진 동작은 우선순위 큐 인터페이스에 필요한 작업이기 때문에, 힙은 우선순위 큐를 구현할 수 있는 아주 좋은 자료구조이다.
stackoverflow.com/questions/18993269/difference-between-priority-queue-and-a-heap
If you have only insert/remove methods, then there is no difference. If you need to traverse your queue/data, values of which are the data itself, then the priority queue will allow you access a sorted list of these values and a heap won’t.
단순히 insert/remove methods만 사용한다면, 차이점은 없다. 데이터 자체의 값인 queue/data 를 통과해야 하는 경우 우선순위 큐를 통해 이러한 값의 정렬된 목록에 접근할 수 있으며 힙은 그렇지 않다.
www.quora.com/What-is-the-difference-between-a-Priority-Queue-and-a-Min-Max-Heap
'CS > 자료구조' 카테고리의 다른 글
[자료구조] priority_queue 컨테이너_C++ (0) | 2022.05.10 |
---|---|
[자료구조] 그래프 (Graph) (0) | 2021.01.26 |
[자료구조] map 컨테이너_C++ (0) | 2021.01.23 |
[자료구조]이진 힙 (Binary Heap) (0) | 2021.01.12 |
[자료구조] 트리 (Tree) (0) | 2021.01.03 |