Listas encadeadas

509 palavras 3 páginas
SIMONGAME

Mecanismo: sequência aleatória de cores (e notas musicais) deve ser memorizada e repetida pelo usuário

TAD Lista Simplesmente Encadeada (LSE) head ∅

A

B

C

D

Classe Nó nó prox

elem

em Java public class No { private E item; private No prox; public No(E item) { this.item = item; prox = null; } public No(E item, No prox) { this.item = item; this.prox = prox; } public E getItem() { return item; } public No getProx() { return prox; } public void setItem(E item) { this.item = item; } public void setProx(No prox) { this.prox = prox;
}
}

Nós Ligados
No no1 = new No("Fulano");
No no2 = new No("Beltrano");
No no3 = new No("Cicrano"); no1.setProx(no2); no2.setNext(no3); new No
("Fulano", new No
("Beltrano", new No("Cicrano")))

Tipo Abstrato Lista public interface Lista { public void insere(int pos, E item); public void insere(E item); public E remove(int pos); public boolean remove(E item); public E busca(int pos); public boolean busca(E item); public void modifica(int pos, E item); public int tamanho(); public boolean vazia(); }

classe LSE public class LSE implements Lista { private No inicio; public LSE() { inicio = null;
}
public boolean vazia() { return inicio == null;
}
public int tamanho () { int tamanho = 0; for (No no = inicio; no != null; no = no.getProx()) tamanho++; return tamanho;
}
}

LSE: Inserção public void insere(E item) { if (vazia()) { inicio = new No(item)
} else {
No no = new No(item); no.setProx(inicio); inicio = no;
}
}

inicio

no
8

A

B

LSE: Inserção numa posição inicio temp

temp

no


B

9

C

D
G
public void insere(int pos, E item) { if (vazia()) { inicio = new No(item)
} else {
No temp = inicio; for (int i = 1; i < pos-1; i++) temp = temp.getProx();
No no = new No(item); no.setProx(temp.getProx()); temp.setProx(no);
}
}

LSE: Remoção
! (1) entrada: valor do elemento a remover
!

Relacionados

  • Listas encadeadas
    544 palavras | 3 páginas
  • Lista Encadeada
    291 palavras | 2 páginas
  • LISTA ENCADEADA
    290 palavras | 2 páginas
  • listas encadeadas
    793 palavras | 4 páginas
  • lista encadeada
    1592 palavras | 7 páginas
  • Lista encadeada
    2771 palavras | 12 páginas
  • Listas Encadeadas
    549 palavras | 3 páginas
  • Lista encadeada
    1159 palavras | 5 páginas
  • lista encadeada
    430 palavras | 2 páginas
  • LISTA ENCADEADA
    3744 palavras | 15 páginas