Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — IV - UFG 2019

Algoritmos e Estrutura de DadosAlgoritmos
Código
qq444651
Banca
IV - UFG
Órgão
UFG
Ano
2019
Nível
Médio
Cargo
CS - - Técnico de Tecnologia da Informação
A pilha P e a fila F possuem originalmente n elementos cada (n>5), e suas operações são:empilha(P, elemento): inserir elemento na pilha P;desempilha(P): remover da pilha P e retornar o elemento removido;enfileira(F, elemento): inserir elemento na fila F;desenfileira(F), remover da fila F e retornar o elemento removido.Seja o pseudocódigo abaixo:para i = 1 até n, façaempilha(P, desempilha(P))enfileira(F, desenfileira(F))fim-paraAo final da execução do pseudocódigo, os estados finais de P e F são, respectivamente:
  1. Aelementos em ordem original e elementos em ordem original.
  2. Belementos em ordem inversa e elementos em ordem inversa.
  3. Celementos em ordem original e elementos em ordem inversa.
  4. Delementos em ordem inversa e elementos em ordem original.
Revelar gabarito e comentário

GabaritoA — elementos em ordem original e elementos em ordem original.

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”.

Pilha e Fila: Operações de rotação

Gabarito: Alternativa A. Após o loop, tanto a pilha quanto a fila mantêm os elementos na ordem original. A pilha é inalterada porque cada operação remove e reinsere o topo. A fila sofre n rotações, mas como n é o número de elementos, cada elemento retorna à sua posição inicial.

Alternativa A — ✅ Correta ⟵ GABARITO

As operações empilha(P, desempilha(P)) e enfileira(F, desenfileira(F)) são executadas n vezes. Para a pilha, o elemento removido e reinserido é sempre o mesmo (o topo), portanto a pilha permanece na ordem original. Para a fila, cada iteração remove o primeiro elemento e o insere no final; após n repetições, cada elemento percorre a fila completa e volta à posição inicial, resultando na ordem original. Dessa forma, ambas as estruturas terminam com os mesmos elementos na mesma ordem de início.

Alternativa B — ❌ Incorreta

Afirma que ambas ficam em ordem inversa. A pilha não inverte a ordem, pois a operação descrita não altera a sequência (o topo é removido e recolocado). A fila também não inverte, pois a rotação completa (n movimentos) restaura a ordem original.

Alternativa C — ❌ Incorreta

Diz que a pilha fica na ordem original e a fila em ordem inversa. A fila permanece na ordem original, não inversa, conforme explicado.

Alternativa D — ❌ Incorreta

Inverte o resultado: pilha em ordem inversa e fila em ordem original. A pilha não se inverte; a fila também não.

PEGA ESSA DICA!

Para questões com operações repetidas sobre estruturas de dados, simule mentalmente as primeiras iterações com um exemplo pequeno (ex.: n=3). Você verá que a pilha não se altera e a fila retorna ao estado inicial após n rotações.

Link permanente: /questoes/qq444651