Resumo de Algoritmos e Estrutura de Dados - Filas

Filas

Filas em Algoritmos e Estruturas de Dados

Filas são estruturas de dados lineares que seguem o princípio FIFO (First In, First Out), ou seja, o primeiro elemento inserido é o primeiro a ser removido.

Operações Básicas

  • Enfileirar (enqueue): Insere um elemento no final da fila.
  • Desenfileirar (dequeue): Remove o elemento do início da fila.
  • Frente (front/peek): Retorna o elemento do início sem removê-lo.
  • Vazia (isEmpty): Verifica se a fila está vazia.

Implementações Comuns

  • Com vetores/arrays: Uso de índices para controle de início e fim.
  • Com listas encadeadas: Nós dinâmicos com ponteiros para o próximo elemento.

Aplicações em Concursos

  • Gerenciamento de processos em sistemas operacionais.
  • Atendimento de requisições (impressão, servidores).
  • Algoritmos como BFS (Busca em Largura).

Variações Importantes

  • Fila Circular: Evita desperdício de espaço em implementações com arrays.
  • Fila de Prioridade: Elementos são ordenados por prioridade (usa heap).

Dicas para Concursos

  • Entenda o comportamento FIFO e suas exceções (ex: filas de prioridade).
  • Domine complexidades das operações: O(1) para enfileirar/desenfileir em implementações eficientes.
  • Pratique implementações em pseudocódigo e linguagens como C ou Java.

Questões relacionadas a Filas

+ Resumos de Algoritmos e Estrutura de Dados