Return the first-in-line element of the queue, but do not remove it.
Return the first-in-line element of the queue and remove it.
Insert a new element into the queue based on its priority. If a duplicate entry already exists, abort the insertion.
The element to push onto the queue.
A deduplicating priority queue that overwrites duplicate entries, based on a singly-linked list.