Você está na página 1de 3

Listas - Motivao

Estruturas Dinmicas de Dados:


Listas, Filas e Pilhas

Estruturas Dinmicas de dados: Listas, Filas e Pilhas

Estruturas Dinmicas de dados: Listas, Filas e Pilhas

Listas - Motivao(cont.)

cama
gaveta
cama

fogo
gaveta

Listas - Motivao (cont.)

o que pode ser esquematizado da seguinte forma:

carto

Exemplo ilustrativo:
 Imagine uma brincadeira utilizada na entrega de presentes a um
aniversariante. Consiste em entregar um carto (no lugar do
presente) no qual se informa que o presente est guardado debaixo da
cama. L chegando, o aniversariante percebe que existe uma
mensagem dizendo que o presente se encontra na gaveta do armrio;
ao abri-la, encontra um outro papel que o conduz ao fogo, do fogo
para debaixo do tapete, da para o frigorifico e deste para debaixo da
mesa.

tapete
fogo

frigorifico
tapete

mesa

presente

frigorifico

mesa

 cada um dos pontos composto pela localizao do ponto e de uma


indicao do prximo local. Isso torna-os de tal maneira
independentes que permite at mesmo uma alterao completa da sua
disposio, mantendo intacto o encadeamento lgico dos seus
componentes.
cama

Devemos notar que:


 as setas utilizadas na ilustrao anterior nada so que mero artifcio
ilustrativo, visto que foi possvel representar o mesmo encadeamento
lgico sem elas, e que no exemplo real elas no existem;
 necessrio um ponto de partida (carto), que no considerado
parte integrante da sequncia, apenas indicador do seu incio;

Estruturas Dinmicas de dados: Listas, Filas e Pilhas

carto

presente

frigorifico

mesa

tapete

gaveta
cama

tapete
fogo

mesa

fogo

frigorifico

gaveta

 Temos, ento, um exemplo de uma lista (encadeada) que se define por


um conjunto de elementos em que cada um referencia um outro
elemento distinto como sucessor.

Estruturas Dinmicas de dados: Listas, Filas e Pilhas

Propriedades das Listas

Filas

Podemos definir as seguintes propriedades das listas:


As filas so estruturas de dados que se comportam como as filas que
conhecemos

 os ns esto ligados linearmente


 existem dois extremos na lista: o incio e o fim

Uma fila no mais que uma lista na qual aplicada uma disciplina de
acesso caracterstica: todo o elemento que entra na lista inserido no fim
desta e todo o elemento que sai da lista removido do incio desta
 esta disciplina de acesso conhecida como FIFO ( First In, First Out )

 os ns podem ser adicionados em qualquer ponto da lista


 os ns podem ser removidos em qualquer ponto da lista
 a lista pode ser percorrida a partir de qualquer ponto

...

6
8 3
5
Estruturas Dinmicas de dados: Listas, Filas e Pilhas

Propriedades das Filas

Estruturas Dinmicas de dados: Listas, Filas e Pilhas

7
0 4
6

Pilhas

Podemos definir as seguintes propriedades das filas:


Informalmente, podemos definir uma pilha como um conjunto de itens que
so adicionados e removidos no topo
 por exemplo, uma pilha de pratos

 os ns esto organizados sequencialmente


 existem dois extremos na fila: o incio e o fim
 os ns so adicionados no fim da fila
 os ns so removidos do incio da fila
 a fila percorrida do incio at ao fim

Uma pilha uma lista na qual aplicada a disciplina de acesso LIFO


(Last In, First Out)
 qualquer elemento que entrar na pilha somente sair quando todos os
que entraram depois dele sarem
Propriedades das pilhas
 os itens encontram-se armazenados sequencialmente
 o ltimo elemento da pilha denomina-se por topo
 os itens so inseridos no topo da pilha (push)
 os itens so removidos no topo(pop)
 apenas o elemento do topo visvel (top)

Estruturas Dinmicas de dados: Listas, Filas e Pilhas

Estruturas Dinmicas de dados: Listas, Filas e Pilhas

Modo de funcionamento das pilhas

Operaes
Criar pilha

Operaes Construtoras

Criar pilha
Guardar elemento
Ler o valor do elemento no topo

45
9
Guardar
elemento

1
3

Retirar elemento
Pilha Vazia?

Ler o valor e
retirar elemento

Corrente de Leitura
< 3, 1, 9, 45 >
Estruturas Dinmicas de dados: Listas, Filas e Pilhas

Corrente de Escrita
< 45, 9, 1, 3 >
9

Você também pode gostar