Escolar Documentos
Profissional Documentos
Cultura Documentos
Tipos de Dados
T Vrios tipos de dados (simples e compostos) foram
vistos neste curso. Eles possuem uma definio prpria e um tipo de acesso ditado pela sua organizao fsica. T Muitas vezes os dados manipulados possuem uma natureza adequada aplicao que, no entanto, no apropriada para implementao com tipos convencionais. P. exemplo: como implementar uma lista telefnica com vetores e registros? T Para manipular dados de natureza mais especfica ou complexa a computao apia-se no conceito de TIPOS ABSTRATOS DE DADOS
T As aplicaes so muitas:
2. 3.
T T
a organizao da lista (se ela ordenada ou no, se pode possuir elementos repetidos, se inseres podem ser realizadas em qualquer lugar ou devem se feitas em lugares especficos) Seu conjunto de operaes O tipo de elemento que ela vai armazenar (lista de nmeros, registros, nomes?). Pode-se pensar como implement-la. As opes para implementao de listas normalmente so duas:
Listas estticas (Implementao usando Vetores) Listas encadeadas, ou dinmicas (Implementao usando ponteiros e alocao dinmica).
A lista no ordenada e pode possuir elementos iguais. O tipo de elemento que ela vai armazenar nomes de pessoas. Seu conjunto de operaes :
1. 2. 3. 4. Criar a lista: criar (L) Inserir um elemento x na posio j: inserir (L,x,j) Eliminar o elemento da posio j: eliminar (L,j) Determinar a posio da primeira ocorrncia de um elemento x: posio (L,x):inteiro. 5. Imprimir o elemento da posio j: imprimir (L,j). 6. Determinar o nmero de elementos da lista:
tamanho (L):inteiro.
elemento = registro dado: tipo_dado prox: >elemento fim registro lista = >elemento
inserir(L1,Joo,1)
L1
Joo
Joo
inserir (L1,Jos,2)
L1
Maria
Joo
Jos
Maria
Joo
Maria
inserir (L,Jos,2)
novo_p
novo_p L
novo_p L
Se pos > tamanho (L) ento procura tamanho(L) seno procura pos -1 fim se p_ant L para i de 1 at procura-1 faa p_ant p_ant^.prox fim para novo_p^.prox p_ant^.prox p_ant^.prox novo_p fim se fim se fim
Joo
eliminar (L,2) p_ant
L
Jos
Maria
Joo
L
Jos
Maria
Joo
p
Jos
Maria
libere (p)
10
Joo, Maria e Jos, nesta ordem, A prxima insero (p. exemplo, Lia) seria aps o Jos, ficando: Joo, Maria, Jos e Lia. Como no h liberdade para eliminar elemento em posies arbitrrias, o primeiro elemento a ser eliminado seria Lia, depois Jos, depois Maria, depois Joo.
largura para um carro mas comprimento para vrios, o ltimo a ser inserido o primeiro que precisa sair.
Joo
3. Depois de inserir Maria
topo
Maria
Joo
Jos
Maria
Joo
Lia
Jos
Maria
Joo
11
Lia
Jos
Maria
Joo
6. Depois de eliminar:
topo
Jos
Maria
Joo
7. Depois de eliminar:
topo
Maria
Joo
8. Depois de eliminar:
topo
Joo
9. Depois de eliminar:
topo
Joo, Maria e Jos, nesta ordem, A prxima insero (p. exemplo, Lia) seria no fim, aps o Jos, ficando: Joo, Maria, Jos e Lia. Como no h liberdade para eliminar elemento em posies arbitrrias, o primeiro elemento a ser eliminado seria o elemento do incio (Joo), depois Maria, depois Jos e depois Lia.
12
Joo
3. Depois de inserir Maria
incio
Joo
Maria
4. Depois de inserir Jos
fim
incio
Joo
Maria
Jos
fim
incio
Joo
Joo
Maria
Jos
Lia
fim
6. Depois de eliminar:
incio
Maria
Jos
Lia
fim
7. Depois de eliminar:
incio
Jos
Lia
fim
8. Depois de eliminar:
incio fim
Lia
9. Depois de eliminar:
incio fim
13
Listas
Introduo Cincia da Computao Rosane Minghim
Apoio na confeco: Rogrio Eduardo Garcia
14