Académique Documents
Professionnel Documents
Culture Documents
Fila
Uma fila uma estrutura de dados linear na qual as inseres so realizadas em um extremo, ficando as remoes restritas ao outro
O extremo onde os elementos so inseridos denominado final da fila, e aquele de onde so removidos denominado comeo da fila
Os objetos so inseridos e removidos de acordo com o princpio: o primeiro que entra o primeiro que sai FIFO First In, First Out
Enqueue: Insere um novo elemento na fila Dequeue: Remove um elemento da fila Init: Inicializa a fila no estado vazia IsEmpty Verifica se a fila est vazia
Estrutura de Dados Fila Declarando Queue fila= new Queue(); Inserindo elementos fila. Enqueue(Joo); fila. Enqueue(Jos);
Inserindo elementos
fila. Enqueue(Joo); fila. Enqueue(Jos); Fila.Enqueue(Pedro);
Estrutura de Dados Fila Declarando Queue fila= new Queue(); Removendo elementos String nome = fila.Dequeue();
Estrutura de Dados Fila Declarando Queue fila= new Queue(); Removendo elementos String nome = fila.Dequeue(); String nome = fila.Dequeue();
Fila - Aplicaes
Exemplo 1: Servio de Impresso
Quando vrios programas solicitam o servio de uma impressora, os trabalhos so atendidos na ordem de chegada
Fila - Aplicaes
Estrutura de Dados Fila Operao -------Enqueue(F,a) Enqueue(F,b) Enqueue(F,c) Enqueue(F,d) Dequeue(F) Dequeue(F) Enqueue(F,e) Dequeue(F) Enqueue(F,c) Enqueue(F,f) Dequeue(F) Dequeue(F)
Estado da Fila Resultado F: [] -------F: [a] -------F: [a,b] -------F: [a,b,c] -------F: [a,b,c,d] -------F: [b,c,d] a F: [c,d] b F: [c,d,e] -------F: [d,e] c F: [d,e,c] -------F: [d,e,c,f] -------F: [e,c,f] d F: [c,f] e
public static void main(String[ ] args) { Fila f = new Fila(10); f.enqueue(10); f.print(); f.enqueue(11); f.print(); f.enqueue(12); f.print(); f.dequeue(); f.print(); }