domingo, 15 de março de 2015

Lista duplamente ligada circular

Uma lista duplamente encadeada é uma representação de uma sequência de objetos na memória do computador. Cada elemento da sequência é armazenado em um nó da lista, com dois ponteiros, um que aponta para o nó anterior e o outro para o seguinte.

Representação:

Implementação:

package listaDuplamenteLigada;

public class ListaDupla {

private No primeira;
private No ultima;
private int totalDeElementos;

public void adicionaNoComeco(int dado) {
if (this.totalDeElementos == 0) {
No novo = new No(dado);
this.primeira = novo;
this.ultima = novo;
novo.setAnterior(novo);
novo.setProxima(novo);

} else {
No novo = new No(this.primeira, dado);
novo.setAnterior(ultima);
ultima.setProxima(novo);
ultima = novo;
primeira.setAnterior(ultima);
}
this.totalDeElementos++;
}

void mostrar() {
if (primeira != null) {
No p = primeira;

do {
System.out.println(p.getDado());
p = p.getProxima();
} while (p != primeira);
}
}

}

Nenhum comentário:

Postar um comentário