Questão de Algoritmos e Estrutura de Dados — Estrutura de Dados — IV - UFG 2023
Algoritmos e Estrutura de Dados›Estrutura de Dados
Código
qq975821
Banca
IV - UFG
Órgão
UFG
Ano
2023
Nível
Médio
Cargo
IV - - Técnico de Tecnologia da Informação
Considere duas estruturas de dados do tipo pilha, denominadas A e B, com as sequências de valores (11, 33, 22) e (44, 22, 11) respectivamente, em que o elemento mais à direita de cada sequência refere-se ao topo da pilha. Sejam as operações: (i) desempilha(P), que remove um elemento da pilha P e retorna esse elemento; (ii) empilha(P, E), que insere o elemento E na pilha P; e (iii) topo(P), que retorna o elemento que está no topo da pilha P. Após executar a expressão “empilha(B, desempilha(A) + desempilha(A) - desempilha(B) + topo(B))”, a sequência de elementos de B será:
A(44, 22, 33).
B(44, 22, 44).
C(44, 22, 55).
D(44, 22, 66).
Revelar gabarito e comentário▾
GabaritoD — (44, 22, 66).
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”.
Estruturas de Dados: Pilhas — Operações e Expressão Aritmética
Gabarito: letra D. Após simular passo a passo as operações da expressão, o valor empilhado em B é 66, resultando na sequência (44, 22, 66).
A questão testa a compreensão do comportamento LIFO (Last In, First Out) das pilhas, bem como a ordem de avaliação das operações. Vamos executar detalhadamente.
Estado inicial das pilhas
A: base (11, 33, topo: 22) → a sequência da esquerda para a direita é base → topo.
A expressão dentro de empilha é calculada primeiro. As operações de desempilha e topo são avaliadas na ordem em que aparecem (da esquerda para a direita):
desempilha(A): remove o topo de A (22) e retorna 22. A passa a ser (11, 33).
desempilha(A): remove o novo topo de A (33) e retorna 33. A passa a ser (11).
desempilha(B): remove o topo de B (11) e retorna 11. B passa a ser (44, 22).
topo(B): retorna o topo de B (22), sem remover. B permanece (44, 22).
empilha(B, 66): insere 66 no topo de B. B final: (44, 22, 66).
1desempilha(A) → 22
2desempilha(A) → 33
3desempilha(B) → 11
4topo(B) → 22
522+33-11+22 = 66
6empilha(B, 66)
LEVEL · soulevel.com.br
Análise das alternativas
Alternativa A — ❌ Incorreta. (44, 22, 33) – O valor 33 foi desempilhado de A e não empilhado em B; o resultado é 66, não 33.
Alternativa B — ❌ Incorreta. (44, 22, 44) – O valor 44 não aparece no cálculo; resultado 44 seria obtido se a expressão fosse apenas 22+22, mas há mais operações.
Alternativa C — ❌ Incorreta. (44, 22, 55) – Valor 55 corresponderia a 22+33, mas faltam as operações com B (-11 e +22).
Alternativa D — ✅ Correta ⟵ GABARITO** (44, 22, 66) – Sequência correta conforme a simulação.
PEGA ESSA DICA!
Em problemas com pilhas, simule cada operação passo a passo, mantendo o controle do topo após cada remoção/inserção. Lembre-se: desempilha remove e retorna; topo apenas consulta. A ordem de avaliação dos operandos é crucial – vá da esquerda para a direita.