Aula 3 - Filas
-
Upload
jessica-ramos -
Category
Documents
-
view
27 -
download
0
Transcript of Aula 3 - Filas
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.1
Captulo 3Pilhas/FilasFila
Aulas de Estrutura de Dados I
Annabell D.R. TamarizLCMAT-CCI
www.lcmat.uenf.br/professores/annabellUniversidade Estadual do Norte Fluminense - UENF
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.2
Ementa
Abstrao de Dados. Alocao Esttica e Dinmica. Listas lineares. Pilhas e Filas:
Conceito Operaes Implementao seqencial Implementao circular Implementao com lista encadeada Exerccios.
Algoritmos Recursivos. Matrizes esparsas. Listas Generalizadas. Algoritmos de classificao e busca.
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.3
Contedo Programtico
1 FilaConceitosOperaesImplementao SeqencialImplementao CircularImplementao com Lista EncadeadaExerccios
2 Simulao de Pilhas
3 Prxima Aula....
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.4
Fila - Conceitos
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.5
Fila - Conceitos
Definio de Fila
Um conjunto ordenado de elementos Primeiro elemento introduzido o primeiro a sair Ultimo introduzido o ultimo a sair.
Tambm chamada de lista FIFO (First In/First Out) Uma fila uma lista para qual os elementos so sempre
acrescentados numa extremidade (final) e sempreremovidos na outra extremidade (inicio)
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.6
Fila - Operaes
Operaes (F sendo uma fila e x um elemento)
enqueue(F,x) - Acrescenta o elemento x na fila F (otamanho de F aumenta)
dequeue (F) - Remove e retorna o primeiro elemento dafila (o tamanho de F diminui)
vazia(F) - Verifica se a fila est vazia (no tem nenhumelemento nela)
inicializa(F) - Inicializa a fila para receber elementos.Uma fila inicializada no estado vazia.
cheia(F) - Verifica se a fila est cheia (no pode aceitarmais elementos)
Nota: vazia e cheia no so opostos
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.7
Fila - implementao seqencial
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.8
Fila - implementao seqencial
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.9
Fila - implementao seqencial
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.10
Fila - implementao seqencial
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.11
Fila - implementao seqencial
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.12
Fila - implementao seqencial
Problemas !!!!
O problema a resolver no momento passa a ser: comoreaproveitar as posies do vetor que forem ficandovazias?
Reflita sobre essa questo, antes de prosseguir. Tentedesenvolver sua prpria soluo.
Possvel Soluo....
Vetor circular existe ou fruto de nossa imaginao? fruto de nossa imaginao mesmo. Todas essas
representaes, ou seja, todos esses desenhos queestamos fazendo, so apenas representaes abstratas.S existem em nossa imaginao.
Voc nunca conseguir ver, tocar ou cheirar um vetor,nem reto nem circular.
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.12
Fila - implementao seqencial
Problemas !!!!
O problema a resolver no momento passa a ser: comoreaproveitar as posies do vetor que forem ficandovazias?
Reflita sobre essa questo, antes de prosseguir. Tentedesenvolver sua prpria soluo.
Possvel Soluo....
Vetor circular existe ou fruto de nossa imaginao? fruto de nossa imaginao mesmo. Todas essas
representaes, ou seja, todos esses desenhos queestamos fazendo, so apenas representaes abstratas.S existem em nossa imaginao.
Voc nunca conseguir ver, tocar ou cheirar um vetor,nem reto nem circular.
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.13
Fila - implementao seqencial
Possvel Soluo....
Logo, podemos imaginar um vetor reto, e podemosimaginar tambm um vetor torto, ou circular.
Na computao, trabalhamos com elementos abstratos.Se estiver confuso, leia novamente, os significados dotermo abstrato.
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.14
Fila - implementao seqencial
Representao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.15
Fila - implementao circular
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.16
Fila - implementao circular
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.17
Fila - implementao circular
Soluo com Indicador de Total de Elementos
Na soluo com vetor circular, podemos diferenciar a condiode fila vazia da condio de fila cheia criando uma novavarivel, que armazena o total de elementos, conforme aFigura a seguir.
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.18
Fila - implementao circular
Problemas
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.19
Fila - implementao circular
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.20
Fila - implementao circular
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.21
Fila - implementao circular
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.22
Fila - implementao circular
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.23
Fila - implementao circular
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.24
Fila - Lista Encadeada
Definio
Para implementar uma fila com uma lista encadeada, adefinio de lista que usamos at agora no se adaptabem.
A fila precisa ter acesso nas suas duas extremidades(uma para acrescentar elementos, outra para tir-los).
Por isso mais fcil usar uma lista encadeada com doisponteiros.
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.25
Fila - Lista Encadeada
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.26
Fila - Lista Encadeada
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.27
Fila - Lista Encadeada
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.28
Fila - Lista Encadeada
Declarao
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.29
Exerccios em sala de Aula
1 Mostre os estados de uma fila depois de cada operao aseguir. Considerando que a fila tem 5 posies, em queestado(s) ela est vazia ou cheia?
inicializa(&F); enqueue(&F,a); enqueue(&F,dequeue(&F)) dequeue(&F); vazia(F); enqueue(&F,b); enqueue(&F,c)
2 Escrever um programa que tendo duas listas uma comimplementao casa vazia e outra contador, transferetodos os dados de uma para outra.
3 Como poderamos implementar uma estrutura semelhantea uma fila usando duas pilhas? (Definir a estrutura dedados e as funes bsicas da fila)
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.30
Exerccios em sala de Aula
1 Implementar outros tipos de fila:1 Fila com prioridade onde os elementos tm uma prioridade
e esto inseridos no lugar certo dentro da fila (e noautomaticamente no final). As funes so as mesmas,mas o enqueue precisa mais um parmetro:enqueue(&aFila,oElemento,aPrioridade).
2 Fila dupla onde os elementos esto inseridos e extradosdos dois lados da fila. As funes enqueue e dequeueprecisam de mais um parmetro para indicar qualextremidade da fila queremos usarenqueue(&aFila,oElemento,Extremidade1ou2)dequeue(&aFila,oElemento,Extremidade1ou2)
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.31
Pilha - Operaes: Criar e Vaziar
Vide arquivo: s62.ppt
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.32
Empilhamento
Vide arquivo: s63.ppt
Vide arquivo: s64.ppt
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.32
Empilhamento
Vide arquivo: s63.ppt
Vide arquivo: s64.ppt
-
Pilhas/Filas
Annabell D.R. Tamariz
Informaes damatria
FilaConceitos
Operaes
Implementao Seqencial
Implementao Circular
Implementao com ListaEncadeada
Exerccios
Simulao de Pilhas
Prxima Aula....
3.33
Prxima aula ...
1 Recursividade.2 Listas Generalizadas.
Informaes da matriaFilaConceitosOperaesImplementao SeqencialImplementao CircularImplementao com Lista EncadeadaExerccios
Simulao de PilhasPrxima Aula....