Você está na página 1de 2

Implementação Estática Seqüencial

Índice > Fila > Implementação Estática Seqüencial

http://www.icmc.usp.br/~sce182/fimpls.html

Instituto de Ciências Matemáticas de São Carlos Departamento de Computação e Estatística SCE182 - Algoritmos e Estruturas de Dados 1 Profs. Resp.: Graça Pimentel, Maria Cristina e Rosane

Implementação Estática Seqüencial

Definição da Estrutura de Dados

Estática Seqüencial Definição da Estrutura de Dados Type índice = 0 maxfila; Var fila = array[1

Type índice = 0 maxfila;

Var

fila

= array[1

maxfila]

of T;

F: fila;

Começo,

{posição anterior ao primeiro elemento}

Fim: índice;

{posição do último elemento}

-> Refazer as operações abaixo, para o cado da fila ser definida da seguinte estrutura:

Type

aloc_filha = array [1

indice = 0

pilha = record info: aloc_fila; comeco, fim: indice;

maxfila] of T;

maxfila;

end;

Var

F: fila;

Operações com Filas

1. Criar (F) - criar uma fila F vazia

Procedure CriaFila (Var Começo, Fim: indice); Begin Começo := 0; Fim := 0;

End;

2. Inserir (x, F) - insere x no fim de F

Procedure Inserir (x: T; Var F: fila; Var Fim: indice); Begin If Fim < maxfila Then Begin Fim := Fim + 1; F[Fim] := x; End Else { OVERFLOW } End;

3. Vazia (F) - testa se F está vazia

Function Vazia (Começo, Fim: indice): Boolean; Begin

Implementação Estática Seqüencial

Vazia:= (Começo=Fim); End;

4. Primeiro (F) - acessa o elemento do início da fila

Function Primeiro (F: fila; Começo: indice): T; Begin x := F[Começo + 1]; End;

5. Elimina (F) - elimina o elemento do início da fila

Procedure Eliminar (Var Começo: indice, Fim: indice); Begin If Vazia (Começo,Fim) then {FILA VAZIA} Else Começo := Começo + 1; End;

http://www.icmc.usp.br/~sce182/fimpls.html

-> Fazer a operação Elimina que retornando o elemento eliminado.

-> Desenvolver o TAD Fila

Essa solução possui o problema de Overflow com espaço no vetor.

Alocação DinâmicaDesenvolver o TAD Fila Essa solução possui o problema de Overflow com espaço no vetor. Fila

FilaTAD Fila Essa solução possui o problema de Overflow com espaço no vetor. Alocação Dinâmica 2