Aula Prática 12
Listas Encadeadas
Monitoria 2011.2
Listas Encadeadas

Listas Encadeadas são usadas para dois
propósitos:
 Criar vetores de tamanhos desconhecidos
na memória
 Armazenar bancos de dados em disco.

A lista ligada permite que se insira e elimine
itens rapidamente sem re-arranjar todo o
conjunto de dados.
Listas Encadeadas

Listas encadeadas podem ser de ligação
simples, ligação dupla ou ligação circular.

Uma lista de ligação simples contém uma
ligação para o próximo item de dado.

Obs.: O ponteiro do último elemento deve
apontar para NULL.
Listas Encadeadas

Uma lista de ligação dupla contém tanto uma
ligação para o próximo item como uma ligação
para o item anterior

Obs.: Nesse caso, o ponteiro que apontaria
para o item anterior do primeiro elemento e o
ponteiro que apontaria para o próximo do último
elemento devem apontar para NULL
Listas Encadeadas

Numa lista de ligação circular, o último item
possui uma ligação com o primeiro item da
lista.

Obs.: Já nesse caso, deve-se haver um
melhor controle. Pois, caso possua mais de 1
elemento, a lista não tem “fim” (nenhum
ponteiro aponta para NULL).
Listas Encadeadas

Exemplo:
Listas Encadeadas
Há, basicamente, três operações
com listas:
Inserção
Remoção
Busca / Impressão
Listas Encadeadas
Listas Encadeadas
Listas Encadeadas
Listas Encadeadas

Exemplo insersão:
Listas Encadeadas

Exemplo - Remoção
Listas Encadeadas
Exemplo – Remoção:
Obs.: Lembrar sempre de dar free() no elemento removido.
Listas Encadeadas

Exemplo - Remoção
Listas Encadeadas

Exemplo – Busca Impressão:
Listas Encadeadas
Dúvidas???
Exercícios
Faça um programa de cadastro de uma lista telefônica
usando o conceito de lista encadeadas. Cada elemento
possuirá nome (no máximo 30 caracteres) e telefone. A
lista deverá estar em ordem alfabética.
Seu programa deverá ter as seguintes opções:
Busca por nome;
Inserção;
Remoção;
Impressão da lista completa;
Download

Listas Encadeadas