Módulo 3 - Filas: o primeiro a chegar é o primeiro a sair
Fila de prioridade: quando furar a fila é justo
8 min de leitura · por Cesar Gargiulo, revisado pela equipe ValorFinal e GuardiaSec · Atualizado em 12/07/2026
O que você vai aprender
- Entender a fila de prioridade como uma fila em que a urgência decide a saída.
- Diferenciar a fila comum (por chegada) da fila de prioridade (por importância).
- Reconhecer o critério de desempate quando as prioridades são iguais.
- Identificar usos reais como pronto-socorro e tarefas urgentes.
Ouvir o resumo desta aula
Um recap de cerca de 2 minutos na voz do Valim, para ouvir no trânsito ou na academia.
Ler a transcrição do resumo
Resumo da aula: Fila de prioridade: quando furar a fila é justo.
Os objetivos desta aula. Entender a fila de prioridade como uma fila em que a urgência decide a saída. Diferenciar a fila comum (por chegada) da fila de prioridade (por importância). Reconhecer o critério de desempate quando as prioridades são iguais. Identificar usos reais como pronto-socorro e tarefas urgentes.
Veja o essencial, parte por parte.
Quando a ordem de chegada não basta. Na fila de prioridade, o mais urgente sai primeiro, não o que chegou primeiro.
A ordem de saída segue a prioridade. Para prever quem sai de uma fila de prioridade, esqueça por um momento a ordem de chegada e olhe primeiro para as prioridades.
Onde a fila de prioridade trabalha. Fila comum: a ordem de saída é a ordem de chegada, e ponto.
Esse foi o resumo do essencial. Para se aprofundar, leia a aula completa e responda os exercícios.
Quando a ordem de chegada não basta
A fila comum é justa quando todos são iguais, mas há situações em que tratar todos igual seria injusto. O melhor exemplo é o pronto-socorro. Se o hospital atendesse estritamente por ordem de chegada, alguém com um problema grave poderia esperar atrás de dez casos leves e correr risco. Por isso o pronto-socorro usa triagem: um caso mais urgente é atendido antes, mesmo tendo chegado depois. Essa lógica é a fila de prioridade. Ela continua sendo uma fila, com espera e atendimento, mas a ordem de saída não é mais só a de chegada: cada elemento carrega uma prioridade, e o de maior prioridade é o próximo a sair.
Repare que a prioridade não é uma quebra de regra, é uma regra diferente e explícita. Na fila comum, a única informação que importa é quando você chegou. Na fila de prioridade, cada elemento traz dois dados: a informação em si e a sua importância. O programa, na hora de escolher quem sai, compara as importâncias e escolhe a maior. E quando duas importâncias empatam, aí sim a fila volta a usar a ordem de chegada como critério de desempate, para que quem esperou mais entre dois casos igualmente urgentes seja atendido primeiro. É a combinação das duas regras que torna a estrutura tão útil.
A ordem de saída segue a prioridade
Para prever quem sai de uma fila de prioridade, esqueça por um momento a ordem de chegada e olhe primeiro para as prioridades. O de maior importância vai na frente, seja qual for a hora em que entrou. Depois que ele sai, a próxima saída é o de maior importância entre os que restaram, e assim por diante. Só quando duas importâncias forem iguais é que você recorre à ordem de chegada para desempatar. É um raciocínio em duas camadas: primeiro compara a urgência; se empatar, compara a chegada. Treinar essa ordem de decisão é o que impede o erro de tratar a fila de prioridade como se fosse uma fila comum.
🎮 Jogo da aula
Ordem de atendimento no pronto-socorro
Estes pacientes chegaram e cada um tem uma prioridade (número maior é mais urgente). Coloque-os na ordem correta de atendimento, do primeiro ao último a ser chamado.
Onde a fila de prioridade trabalha
A fila de prioridade aparece sempre que algumas tarefas são mais importantes que outras. Um sistema operacional decide qual programa roda a seguir dando prioridade a processos críticos. Um servidor de tarefas pode marcar certos trabalhos como urgentes para que passem na frente da fila. Aplicativos de mensagem podem priorizar notificações importantes. E, num nível mais avançado, vários algoritmos de caminho, como os que encontram a rota mais curta num mapa com distâncias, usam uma fila de prioridade para escolher sempre o próximo ponto mais promissor. Você não vai implementar tudo isso agora, mas reconhecer que a estrutura por trás é uma fila de prioridade já muda a forma como você lê esses problemas.
Teste rápido
Numa fila de prioridade, quem é o próximo a sair?
Perguntas frequentes
- A fila de prioridade ainda é uma fila?
- É, no sentido de que os elementos entram, esperam e são atendidos um a um. O que muda é o critério de quem sai: em vez de ser só a ordem de chegada, é a prioridade. Se todos tiverem a mesma prioridade, ela se comporta exatamente como uma fila comum, atendendo por ordem de chegada.
- Como se representa a prioridade de cada elemento?
- Geralmente por um número ou por um nível. Pode ser um número em que o maior é mais urgente, ou o contrário, dependendo da convenção. Pode ser também um rótulo como alta, média e baixa. O importante é que cada elemento carregue, junto da informação, esse dado de importância que o programa compara na hora de escolher quem sai.
- O que acontece quando duas prioridades são iguais?
- Aí entra o desempate. O critério mais comum e mais justo é a ordem de chegada: entre dois elementos igualmente urgentes, sai primeiro o que esperava há mais tempo. Isso mantém uma parte da justiça da fila comum dentro da fila de prioridade e evita que alguém fique preso para sempre.
- Furar a fila de prioridade não é injusto?
- Não, porque a regra é combinada e vale para todos. Na fila comum, furar é injusto porque quebra a única regra existente, a da chegada. Na fila de prioridade, passar na frente por urgência é a própria regra, conhecida por todos. O pronto-socorro mostra bem: atender o caso grave antes é o mais justo, não o contrário.
- A fila de prioridade é mais difícil de programar que a comum?
- Um pouco, porque a cada saída é preciso encontrar o elemento de maior prioridade, não só pegar o da frente. Existem estruturas eficientes para isso, como o heap, estudadas em cursos mais avançados. No nível da lógica, o que importa é entender a regra: comparar prioridades e, no empate, a chegada.
- Onde já usei uma fila de prioridade sem perceber?
- Provavelmente em vários lugares. A triagem de um pronto-socorro, a ordem em que um computador executa programas, a priorização de e-mails importantes, a escolha da próxima rota num aplicativo de mapas. Sempre que algo urgente passa na frente de algo comum de forma organizada, há uma fila de prioridade por trás da cena.
Fontes
Seu progresso fica salvo neste aparelho. Assinantes sincronizam entre os aparelhos.