17
Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Embed Size (px)

Citation preview

Page 1: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Aula Prática 12

Listas Encadeadas

Monitoria 2011.2

Page 2: 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óriaArmazenar bancos de dados em disco.

A lista ligada permite que se insira e elimine itens rapidamente sem re-arranjar todo o conjunto de dados.

Page 3: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

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.

Page 4: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

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

Page 5: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

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).

Page 6: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas Exemplo:

Page 7: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas

Há, basicamente, três operações com listas:

InserçãoRemoção

Busca / Impressão

Page 8: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas

Page 9: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas

Page 10: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas

Page 11: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas Exemplo insersão:

Page 12: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas Exemplo - Remoção

Page 13: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas EncadeadasExemplo – Remoção:

Obs.: Lembrar sempre de dar free() no elemento removido.

Page 14: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas Exemplo - Remoção

Page 15: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas Exemplo – Busca Impressão:

Page 16: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

Listas Encadeadas

Dúvidas???

Page 17: Aula Prática 12 Listas Encadeadas Monitoria 2011.2

ExercíciosFaç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;