Fila de prioridade

Boa noite rapaziada.
Preciso de ajuda para terminar o código abaixo, nele tenho que mostrar a quantidade de prioridades, por exemplo, se eu tenho dois caracteres ‘a’ , ‘b’ e ambos têm prioridade = 1 logo, na prioridade nível 1 tenho 2 caracteres. O problema acontece quando tento imprimir a última prioridade da fila, pois ela nunca aparece.
A saída fica 1:2, enquanto era pra ser 1:2, 2:1 (sendo o número antes dos dois pontos a prioridade e depois dos dois pontos a quantidade), quem puder me ajudar agradeço já estou tentando a horas e deve ser a coisa mais simples do mundo ou quase.

FilaP.java

protected void mostraQuantPriorid() { int p = this.inicio.getPrioridade(), c = 0; for (No n = this.inicio; n != null; n = n.getProx()) { if (p == n.getPrioridade()) { c++; } else { System.out.print(p + ": " + c + ", "); p = n.getPrioridade(); c = 1; } } }Main.java FilaP fp = new FilaP(); fp.inserirP(1, 'a'); fp.inserirP(1, 'b'); fp.inserirP(2, 'c'); fp.mostraQuantPriorid();obs: getProx() = retorna um nó, cada nó é composto por um int que indica a prioridade e um Object para qualquer valor no meu caso char.

Eu sugiro que, primeiramente, você faça a contagem, depois, exiba o resultado.