PriorityQueue no se ordena al agregar

Tengo una cola de prioridad en la que agrego un objeto Node, donde los nodos deben ordenarse por un valor que contengan. Por alguna razón, la cola de prioridad no ordenará los Nodos al agregar. Si alguien puede ver algo mal con esto o tiene alguna guía, lo agradezco. Aquí hay un breve ejemplo:

PriorityQueue<Node> PQ = new PriorityQueue<Node>();
        //for each entry create a node and add it to the PriorityQueue
        for(Entry<Character,Integer> entry : entries){
            PQ.add(new Node(entry.getKey(),entry.getValue(), true));
        }

aquí está la @ del nocompareTo método:

@Override
public int compareTo(Node n) {
  if(n.frequency.intValue() > this.frequency.intValue()) return  -1;
  else if(n.frequency.intValue() == this.frequency.intValue()) return 0;
  else return 1;
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta