Questão de Algoritmos e Estrutura de Dados — Algoritmos — IV - UFG 2019
Algoritmos e Estrutura de Dados›Algoritmos
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:
Aelementos em ordem original e elementos em ordem original.
Belementos em ordem inversa e elementos em ordem inversa.
Celementos em ordem original e elementos em ordem inversa.
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.