Anda di halaman 1dari 10

5/18/2012

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

Paramanipular listas lineares,precisamos disponibilizar operaes de: Busca,Incluso,Remoo.

2012.1

ProgramaodeComputadoresII

ListasLineares
Operaes

Paramanipular listas lineares,precisamos disponibilizar operaes de: Busca,Incluso,Remoo.


Casos particulares 1. Inserso e remoo em um nico extremo: Pilha. 2. Inserso e remoo em extremos distintos: Fila.
2012.1 ProgramaodeComputadoresII 8

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.

Suponha que cada clula tem endereo e ocupa kbytes:

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

Implemente em Javauma lista linearutilizando Arrays.

2012.1

ProgramaodeComputadoresII

12

5/18/2012

ListasLineares
Exerccio

Casa: Implemente em Javauma lista linear ordenada utilizando Arrays.

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

Implemente em Javauma pilha utilizando Arrays.

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

Implemente em Javauma fila utilizando Arrays.

2012.1

ProgramaodeComputadoresII

20

10

Anda mungkin juga menyukai