From charlesreid1

Priority queues, like Queues, are data collections that add items to the back and remove items from the front - a first-in, first-out container. However, priority queues attach a key to each value in the queue, and sorts items in the queue by key. This allows different items to be processed with different priorities.