Programaode ComputadoresII
TCC00.174
Prof.:LeandroA.F.Fernandes
www.ic.uff.br/~laffernandes
Contedo:ListasLineares
Materialelaboradopelosprofs.AnselmoMontenegroeMarcosLage comcontribuiesdoprof.LeandroA.F.Fernandes
EstruturadeDados
Introduo
Uma estrutura de dados armazena dados na memria do computador a fim de permitir o acesso eficiente dos mesmos.
2012.1
ProgramaodeComputadoresII
5/18/2012
EstruturadeDados
Introduo
Uma estrutura de dados bem projetada permite a manipulao eficiente, em tempo e em espao, dos dados armazenados atravs de operaes especficas.
2012.1
ProgramaodeComputadoresII
ListasLineares
Introduo
Listas Lineares: So de fcil manipulao. Agrupam informaes referentes a um conjunto de elementos que se relacionam entre si
2012.1
ProgramaodeComputadoresII
5/18/2012
ListasLineares
Definio
Uma lista linear um conjunto de n elementos x1,x2,...,xn, cuja propriedade estrutural baseiase nas posies relativas de seus elementos.
2012.1
ProgramaodeComputadoresII
ListasLineares
Definio
Uma lista linear um conjunto de n elementos x1,x2,...,xn, cuja propriedade estrutural baseiase nas posies relativas de seus elementos.
Supondo n>0,temos: x0 oprimeiro elemento para 0<k<n: xk precedido por xk1eseguido por xk+1 xn oltimo elemento.
2012.1 ProgramaodeComputadoresII 6
5/18/2012
ListasLineares
Operaes
2012.1
ProgramaodeComputadoresII
ListasLineares
Operaes
5/18/2012
ListasLineares
Alocao
Ao desenvolver uma implementao para listas lineares devemos levar em conta como podemos armazenal no computador. Opes: Sequencial ou Encadeada Auladehoje:Implementao Sequencial.
2012.1
ProgramaodeComputadoresII
ListasLineares
AlocaoSequencial
A forma mais natural de armazenar uma lista linear consiste em armazenar seus elementos em clulas de memria consecutivas.
2012.1
ProgramaodeComputadoresII
10
5/18/2012
ListasLineares
Ordenadas
Os elementos da lista podem ser formado por campos: Uma chave k[i] est associada ao n L[i]. A lista dita classificada ou ordenada por chave quando: se i < j ento k[i] precede k[j]
2012.1
ProgramaodeComputadoresII
11
ListasLineares
Exerccio
2012.1
ProgramaodeComputadoresII
12
5/18/2012
ListasLineares
Exerccio
2012.1
ProgramaodeComputadoresII
13
ListasLineares
EstruturasdeAcessoRestrito
Paramuitas aplicaes necessrio impor restries deacesso aos dados. Tais restries podem ser benficas por: aliviar anecessidade deusar estruturas commais detalhes. permitir implementaes mais simpleseflexveis.
2012.1
ProgramaodeComputadoresII
14
5/18/2012
ListasLineares
Pilhas
Apenas duas operces bsicas: PUSHou Empilha:Acrescentar notopo dapilha POPou Desempilha:Retirar dotopo dapilha
2012.1
ProgramaodeComputadoresII
15
ListasLineares
Pilhas
Como o ltimo elemento que entrou na pilha ser o primeiro a sair da pilha. A pilha conhecida como uma estrutura do tipo: LIFO (Last In First Out).
2012.1
ProgramaodeComputadoresII
16
5/18/2012
ListasLineares
Exerccio
2012.1
ProgramaodeComputadoresII
17
ListasLineares
Filas Apenas duas operces bsicas:
Queueou Enfila:v inserido nofinaldafila. Dequeue ou Desenfila:descarta oelemento mais antigo dafila,ou seja,aquele que est noincio dafila.
2012.1
ProgramaodeComputadoresII
18
5/18/2012
ListasLineares
Filas
Como o primeiro elemento que entrou na fila ser o primeiro a sair da fila. A fila conhecida como uma estrutura do tipo: FIFO (First In First Out).
2012.1
ProgramaodeComputadoresII
19
ListasLineares
Exerccio
2012.1
ProgramaodeComputadoresII
20
10