Escolar Documentos
Profissional Documentos
Cultura Documentos
Listas Ligadas
Profª. Dayse Silveira de Almeida
daysesa@ufg.br
• Pesquisar elemento:
• Pré-condição: nenhuma
• Pós-condição: retorna a posição do elemento na lista, ou um valor
especial caso não exista
TAD Listas
• Remover elemento (por posição):
• Pré-condição: uma posição válida da lista é informada;
• Pós-condição: o elemento na posição fornecida é removido da lista
• P = P->prox;
Pesquisar elemento
• Pré-condição: nenhuma
• Pós-condição: retorna a posição do elemento na lista, ou
um valor especial caso não exista
Pesquisar elemento
• Pré-condição: nenhuma
• Pós-condição: retorna a posição do elemento na lista, ou
um valor especial caso não exista
Pesquisar elemento
• Pré-condição: nenhuma
• Pós-condição: retorna a posição do elemento na lista, ou
um valor especial caso não exista
Pesquisar elemento
Remover elemento (por posição)
• Pré-condição: uma posição válida da lista é informada
• Pós-condição: o elemento na posição fornecida é
removido da lista
Remover elemento (por posição)
• Pré-condição: uma posição válida da lista é informada
• Pós-condição: o elemento na posição fornecida é
removido da lista
Remover elemento (por posição)
• Pré-condição: uma posição válida da lista é informada
• Pós-condição: o elemento na posição fornecida é
removido da lista
Remover elemento (por posição)
• Pré-condição: uma posição válida da lista é informada
• Pós-condição: o elemento na posição fornecida é
removido da lista
Remover elemento (por posição)
• Pré-condição: uma posição válida da lista é informada
• Pós-condição: o elemento na posição fornecida é
removido da lista
Remover elemento (por posição)
Recuperar elemento (por posição)
• Pré-condição: uma posição válida da lista é informada
• Pós-condição: o elemento na posição fornecida é
retornado
• Nesse caso
• int pos
Recuperar elemento (por posição)
Contar número de elementos
• Pré-condição: nenhuma
• Pós-condição: retorna o número de elementos na lista
Verificar se a lista está vazia
• Pré-condição: nenhuma
• Pós-condição: retorna true se a lista estiver vazia e false
caso contrário
Verificar se a lista está cheia
• Pré-condição: nenhuma
• Pós-condição: retorna true se a lista estiver cheia e false
caso contrário
• Nesse caso,
• int pos
Insere em qualquer posição
• Para inserir em qualquer posição, precisamos de um
ponteiro indicando a posição de inserção
Insere em qualquer posição
• Para inserir em qualquer posição, precisamos de um
ponteiro indicando a posição de inserção
Insere em qualquer posição
• Para inserir em qualquer posição, precisamos de um
ponteiro indicando a posição de inserção
Insere em qualquer posição
• Para inserir em qualquer posição, precisamos de um
ponteiro indicando a posição de inserção
Insere em qualquer posição
• Para inserir em qualquer posição, precisamos de um
ponteiro indicando a posição de inserção
Insere em qualquer posição
Exercício
• Implementar o TAD Lista com o tipo lista definido por um
registro com dois ponteiros primeiro e ultimo e um
contador de número de elementos inseridos.
Referência
• Batista, Gustavo. TAD Listas e Listas Ligadas. Algoritmos
e Estruturas de Dados I. Slides. Ciência de Computação.
ICMC/USP, 2009.