Want to create interactive content? It’s easy in Genially!

Get started free

Estruturas Dinâmicas - Filas

Ana Almeida

Created on March 16, 2024

Módulo 6 - Estruturas Dinâmicas em Python

Start designing with a free template

Discover more than 1500 professional designs like these:

Transcript

- FILAS -

Start

Estruturas DinÂmicas

Next

4. Operações Comuns em Filas

3. Classe Queue

2. Utilizar Listas como Filas

1. Noção de Fila

ÍNDICE

Next

As Filas (queue) em programação são estruturas de dados constituídas por uma sequência de elementos. Os elementos da Fila são retirados pela ordem em que foram colocados

FILAS

Next

Uma Fila tem dois elementos que se distinguem dos restantes:

  • o elemento do inicio da fila - o qual pode ser retirado da fila
  • o elemento do fim da fila - a seguir ao qual podem ser acrescentados novos elementos.

- FILA -

Next

FIFO

Uma fila é uma estrutura linear, onde os elementos são adicionados no final da fila e removidos do início da fila. Apenas um elemento da fila pode ser acedido ou removido - o elemento "mais antigo da fila".

Next

As Filas são estruturas de dados muito utilizadas na programação para organizar e gerir dados de uma forma sequencial. Na programação em Python podemos utilizar as Listas (método mais simples), a classe deque da biblioteca collections ou criar a própria classe Fila.

Next

Implementação de uma Lista

A lista é uma estrutura de dados incorporada no Python que pode ser utilizada como uma fila. Em vez de enqueue() e dequeue(), são utilizadas as funções append() e pop(). No entanto, as listas tornam-se muito lentas, porque inserir ou apagar um elemento no início requer deslocar todos os outros elementos um por um. O grau de complexidade é muito maior, uma vez que temos de percorrer toda a lista e reordená-la.

Next

Exemplo 1: Utilizar Listas como Filas

Next

Exemplo 2:

Next

Filas utilizando a collections.deque

As filas em Python podem ser implementadas de maneira mais eficiente utilizando a classe collections.deque (fila de duas pontas), a qual foi projetada para ter adições rápidas e remoções de ambos os extremos, tornando o seu desempenho mais eficiente do que uma lista padrão (list), especialmente quando a fila é grande, pois não requer realocações de memória.

Next

Exemplo 3: Criar uma Fila utilizando a collections.deque

Next

Exemplo 4: Criar uma Fila utilizando a collections.deque

Next

O método popleft, neste exemplo, tem duas funções:

  1. Remover o primeiro elemento da fila (cabeça);
  2. Devolver o valor do elemento removido para a variável head (A)
Exemplo 5: Criar uma Fila utilizando a collections.deque

Next

Exemplo 6: Criar uma Fila utilizando a collections.deque

A biblioteca queue em Python oferece a classe Queue, que é uma implementação de fila FIFO (First-In, First-Out). A classe Queue fornece métodos simples e intuitivos para operações de fila. A sua implementação é otimizada para operações de adição e remoção de elementos. Isto significa que, mesmo para grandes conjuntos de dados, as operações de fila são executadas de forma eficiente, garantindo um desempenho consistente.

Exemplo

Next

Criar uma Fila utilizando a Class Queue da biblioteca queue

Next

Exemplo 7: Criar uma Fila através de class Queue

Limpar a fila - remove todos os itens da fila

Limpar a fila e devolver uma lista com os elementos

Obter o tamanho da fila

Verificar se a fila está vazia

Remover um elemento

Next

Inserir um elemento

Operações comuns em Filas

Next

RESUMO

Next

Ficha de Trabalho

Referências