A Pilha é uma das estruturas mais simples e mais versáteis dentre as utilizadas na computação. Antes de entrar nas nuances técnicas sobre pilhas, vamos abstrair o seu conceito para uma situação real.
OLIVEIRA, Pietro Martins de; PEREIRA, Rogério de Leon. Estruturas de Dados I. Maringá: Unicesumar, 2019.
As funções de desempilhar e de empilhar são comumente chamadas de pop() e push(), respectivamente. Considere a seguinte pilha de números inteiros.
PILHA:
INÍCIO -> 5, 2, 15, 3, 9, 8, 4, 12, 10, 7, 1, 11 <-TOPO
Sobre esta pilha, execute a seguinte sequência de operações:
pop(); pop(); pop(); push(6); push(13); pop(); push(14); pop(); pop();
Assinale o elemento que será o próximo a ser removido se for chamada a função pop() mais uma vez.
Alternativa 1:
7
Alternativa 2:
8
Alternativa 3:
9
Alternativa 4:
10
Alternativa 5:
12
Soluções para a tarefa
Resposta:
alternativa 4 : 10
Explicação:
Resposta:
Alternativa 5: 12
Explicação:
Observe:
PILHA:
INÍCIO -> 5, 2, 15, 3, 9, 8, 4, 12, 10, 7, 1, 11 <-TOPO
pop(); pop(); pop(); push(6); push(13); pop(); push(14); pop(); pop();
5, 2, 15, 3, 9, 8, 4, 12, 10 = pop(); pop(); pop();
5, 2, 15, 3, 9, 8, 4, 12, 10, 6, 13 = push(6); push(13);
5, 2, 15, 3, 9, 8, 4, 12, 10, 6 = pop();
5, 2, 15, 3, 9, 8, 4, 12, 10, 6, 14 = push(14);
5, 2, 15, 3, 9, 8, 4, 12, 10 = pop(); pop();
Daí a questão pede:
Assinale o elemento que será o próximo a ser removido se for chamada a função pop() mais uma vez. Então:
5, 2, 15, 3, 9, 8, 4, 12 = pop();
Sem falar que são 7 x pop() e 3 x push(), ou seja, é só subtrair (7-3 = 4) e retirar quatro elementos da fila ficando: 5, 2, 15, 3, 9, 8, 4, 12
Depois do Push(14), vem dois Pop(). Desempilhando o próprio 14 e o 6 respectivamente. O topo fica sendo o 10. Se der mais um Pop() , o 10 seria desempilhado.