Cambio de Java PriorityQueue a un Max PQ [duplicado]

Esta pregunta ya tiene una respuesta aquí:

Cambie priorityQueue a max priorityqueue 13 respuestas

La implementación de la cola de prioridad en la biblioteca estándar de Java parece ser una cola de prioridad mínima que encontré algo confusa. Para convertirlo en uno máximo, creé un objeto de comparación personalizado.

Comparator<Integer> cmp = new Comparator<Integer>()
{
    public int compare( Integer x, Integer y )
    {
        return y - x;
    }
};

Me preguntaba si había una solución más elegante. Esencialmente, no quiero una cola de prioridad genérica que pueda usarse para implementar Dijkstras, etc. Ni siquiera me di cuenta de que habría una que funcionara a la inversa: /

Respuestas a la pregunta(4)

Su respuesta a la pregunta