Questão de Algoritmos e Estrutura de Dados — Filas — FCC 2016
Algoritmos e Estrutura de Dados›Filas
Código
fc034520
Banca
FCC
Órgão
TRT - 23ª REGIÃO (MT)
Ano
2016
Nível
Médio
Cargo
Técnico Judiciário - Tecnologia da Informação
Estruturas de dados básicas, como as pilhas e filas, são usadas em uma gama variada de aplicações. As filas, por exemplo, suportam alguns métodos essenciais, como o
Aenqueue(x), que insere o elemento x no fim da fila, sobrepondo o último elemento.
Bdequeue(), que remove e retorna o elemento do começo da fila; um erro ocorrerá se a fila estiver vazia.
Cpush(x), que insere o elemento x no topo da fila, sem sobrepor nenhum elemento.
Dpop(), que remove o elemento do início da fila e o retorna, ou seja, devolve o último elemento inserido.
Etop(), que retorna o elemento do fim da fila sem removê-lo; um erro ocorrerá se a fila estiver vazia.
Revelar gabarito e comentário▾
GabaritoB — dequeue(), que remove e retorna o elemento do começo da fila; um erro ocorrerá se a fila estiver vazia.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Filas (FIFO) e operações básicas
Gabarito: letra B. A alternativa B descreve corretamente a operação dequeue(): remove e retorna o elemento do início da fila, gerando erro se a fila estiver vazia. As filas seguem o princípio FIFO (first in, first out) e possuem duas operações fundamentais: enqueue (inserir no fim) e dequeue (remover do começo). O contexto do material de apoio confirma: "As filas são estruturas baseadas no princípio FIFO (first in, first out) e possuem duas funções básicas: ENQUEUE, que adiciona um elemento ao final da fila, e DEQUEUE, que remove o elemento no início da fila."
Filas (FIFO)
1Operações fundamentais
enqueue(x)
Insere no fim
Não sobrepõe
dequeue()
Remove do início
Retorna o elemento
Erro se vazia
2Operações de pilha (LIFO) — ❌
push(x)
Insere no topo
pop()
Remove do topo
Retorna o último inserido
top()
Retorna o topo sem remover
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma que enqueue(x) insere x no fim da fila sobrepondo o último elemento. Isso é falso: o enqueue adiciona o novo elemento ao final, sem sobrepor nenhum elemento existente. A fila apenas encadeia o novo nó após o último.
Alternativa B — ✅ Correta ⟵ GABARITO
dequeue() remove e retorna o elemento do começo (início) da fila, e um erro ocorre se a fila estiver vazia. Essa é a definição exata da operação em estruturas FIFO.
Alternativa C — ❌ Incorreta
push(x) é uma operação típica de pilhas (LIFO), não de filas. Além disso, diz "insere no topo da fila" — filas não possuem topo; possuem início e fim. Não há sobreposição, mas o nome da operação está errado para filas.
Alternativa D — ❌ Incorreta
pop() é operação de pilha (remove do topo). Na fila, quem remove do início é dequeue. A alternativa ainda afirma que pop() devolve "o último elemento inserido", o que é característica de pilha (LIFO), não de fila (que devolve o primeiro inserido).
Alternativa E — ❌ Incorreta
top() é operação de pilha (retorna o topo sem remover). Em filas, o equivalente seria front() ou peek(), que retorna o início da fila, e não o fim. A descrição "retorna o elemento do fim da fila" está invertida.
NÃO CAIA NESSA!
A banca mistura operações de pilha (push, pop, top) com operações de fila (enqueue, dequeue). O candidato que confunde os conceitos pode marcar uma alternativa que usa o nome da operação errada ou inverte a direção (inserir/remover no lado oposto). Lembre-se: fila = FIFO; pilha = LIFO. Decore as operações: fila → enqueue/dequeue; pilha → push/pop/top.