Use a PriortyQueue.