In computer science, a priority queue is an abstract data type which is like a regular queue or stack data structure,
but where additionally each element has a "priority" associated with it. In a priority queue, an element with high
priority is served before an element with low priority. In some implementations, if two elements have the same
priority, they are served according to the order in which they were enqueued, while in other implementations,
ordering of elements with the same priority is undefined.
PriorityQueue (binary heap implementation)
In computer science, a priority queue is an abstract data type which is like a regular queue or stack data structure, but where additionally each element has a "priority" associated with it. In a priority queue, an element with high priority is served before an element with low priority. In some implementations, if two elements have the same priority, they are served according to the order in which they were enqueued, while in other implementations, ordering of elements with the same priority is undefined.
Priority Queue
source: howtodoinjava.com
Complexity
O(log n)
O(log n)
O(1)
O(1)
O(1)
O(1)
O(n)
O(n)
Reference
import { PriorityQueue } from '@pencroff/ts-algorithms/dist/structure/priority-queue'; const q = new PriorityQueue([['A', 1], ['B', 2], ['C', 3]])