Você está na página 1de 17

Listas lineares

Denise Guliato Faculdade de Computao UFU www.facom.ufu.br/~guliato

Vrios slides foram adaptados de Nina Edelwais e Renata Galante Estrutura de Dados Srie de Livros Didticos - Informtica - UFRGS

Listas lineares
Estudo de listas lineares e das operaes bsicas sobre elas, considerando as diferentes formas de implementao fsica

Crdito do slide para Nina Edelwais e Renata Galante

Denise Guliato

Lista linear
Uma Lista Linear (LL) uma seqncia de nodos

Nodos - elementos do mesmo tipo Relao de ordem linear (ou total)


Crdito do slide para Nina Edelwais e Renata Galante Denise Guliato

Lista linear

Segundo nodo Primeiro nodo ltimo nodo

Crdito do slide para Nina Edelwais e Renata Galante

Denise Guliato

Estrutura dos nodos


Estrutura interna abstrada Pode ter uma complexidade arbitrria Enfatizado o conjunto de relaes existente
a b c d z

INFORMAES Nmero RG Nome Nasc. Cargo


Denise Guliato

Crdito do slide para Nina Edelwais e Renata Galante

Definio formal
Uma lista linear uma coleo de n 0 nodos x1, x2, ... , xn, todos do mesmo tipo, cujas propriedades estruturais relevantes envolvem apenas as posies relativas lineares entre nodos: n = 0 : lista vazia, apresenta zero nodos n > 0 : x1 o primeiro nodo xn o ltimo nodo 1 < k < n : xk precedido por xk-1 e sucedido por xk+1

Lista linear : seqncia de 0 ou mais nodos do mesmo tipo


Crdito do slide para Nina Edelwais e Renata Galante Denise Guliato

Exemplos de aplicaes com listas


Notas de alunos Cadastro de funcionrios de uma empresa Itens em estoque em uma empresa Dias da semana Letras de uma palavra Pessoas esperando nibus Cartas de baralho Lista telefonica

Adaptado de Nina Edelwais e Renata Galante

Denise Guliato

Operaes sobre listas lineares


Operaes bsicas:

Criao de uma lista Insero de um nodo Excluso de um nodo Acesso a um nodo Destruio de uma lista
Crdito do slide para Nina Edelwais e Renata Galante Denise Guliato

listas lineares com disciplina de acesso


Disciplina de acesso refere-se forma como os elementos de uma lista linear so acessados, inseridos e removidos. Se os elementos de uma lista linear s podem ser inseridos, acessados ou removidos da ltima posio, chamamos esta lista linear de pilha (LIFO - Last In First Out);
Crdito do slide para Nina Edelwais e Renata Galante Denise Guliato

listas lineares com disciplina de acesso

Se os elementos de uma lista linear s podem ser inseridos na ltima posio e acessados ou removidos da primeira posio, chamamos esta lista linear de fila (FIFO - First In First Out);

Crdito do slide para Nina Edelwais e Renata Galante

Denise Guliato

Consideraes sobre alocao de memria


Como armazenar os elementos de uma lista???

A alocao de memria para implementar uma lista pode ser esttica ou dinmica.

Denise Guliato

Consideraes sobre alocao de memria


alocao esttica
rea de memria alocada no momento da compilao Uma lista com alocao esttica de memria exige uma definio do nmero mximo de elementos super ou sub dimensionamento do tamanho da lista.

Denise Guliato

Consideraes sobre alocao de memria


alocao dinmica:
o espao de memria alocado em tempo de execuo. Uma lista com alocao dinmica cresce medida que novos elementos precisam ser armazenados (e diminui medida que elementos anteriormente armazenados so retirados da lista).

Denise Guliato

Consideraes sobre o acesso aos elementos de uma lista


acesso sequencial --- os elementos de uma lista so armazenados de forma consecutiva na memria. Exemplo: considere que cada elemento da lista tenha Exemplo tamanho k --- o endereo de um elemento ei facilmente calculado
.........
t

ei-1

ei
t+k

ei+1
t+2K

........
t+3K

Denise Guliato

Consideraes sobre o acesso aos elementos de uma lista


acesso encadeado
--- os elementos de uma lista podem ocupar quaisquer reas de memria, no necessariamente consecutivas para preservar a relao de ordem de uma lista linear, cada elemento da lista deve armazenar sua informao e o endereo de memria onde se encontra o prximo elemento --- o endereo do elemento ei no pode ser facilmente calculado.
Denise Guliato

Consideraes sobre o acesso aos elementos de uma lista


combinaes possveis: ---alocao esttica versus alocao dinmica ---acesso sequencial versus acesso encadeado
alocaao esttica/acesso sequencial alocao dinmica/acesso sequencial alocaoesttica/acesso encadeado alocaodinmica/acesso encadeado

Denise Guliato

Referncias
Pereira, S.L. Estruturas de Dados Fundamentais - Conceitos e Aplicaes. Editora rica, 5a. edio, 2001. Nina Edelwais e Renata Galante. Srie de Livros Didticos Informtica da UFRGS.