Geral
Estruturas de Dados
Semana 3
0

Questão

Imagine que você está organizando uma pilha de pratos em uma cozinha. Sempre que um novo prato é lavado, ele é colocado no topo da pilha. Da mesma forma, quando alguém precisa de um prato, ele é retirado do topo da pilha. Isso garante que o prato mais recentemente lavado seja o primeiro a ser utilizado, enquanto os pratos lavados anteriormente permanecem embaixo. Essa organização é eficiente e permite fácil acesso ao prato mais limpo.

Qual das seguintes afirmações interpreta corretamente a operação de inserção (push) em uma pilha implementada com listas encadeadas, considerando as particularidades de gerenciamento de memória e desempenho?
A) A inserção de um novo elemento em uma pilha encadeada é eficiente porque adiciona o novo elemento ao início da lista e ajusta apenas o ponteiro do topo da pilha.
B) A inserção de um novo elemento em uma pilha encadeada ocorre no final da lista para manter a ordem sequencial.
C) A inserção de um novo elemento em uma pilha encadeada é ineficiente devido ao tempo necessário para percorrer toda a lista antes de inserir o novo elemento.
D) A inserção de um novo elemento em uma pilha encadeada envolve realocar todos os elementos em novas posições de memória contíguas.
E) A inserção de um novo elemento em uma pilha encadeada requer a atualização de todos os ponteiros dos elementos existentes na lista.
function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/670/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': 'cDBoTKo5GiVS7ChouHx8XV4I6swRfktvftw8hm78TBavSoxi7QKD5YjgHfmoViAq' }, body: JSON.stringify({ value: value }) }) .then(response => response.json()) .then(data => { if (data.success) { document.getElementById(`score-${questaoId}`).textContent = data.score; const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`); const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`); upBtn.classList.remove('active-up'); downBtn.classList.remove('active-down'); if (data.user_vote === 1) upBtn.classList.add('active-up'); if (data.user_vote === -1) downBtn.classList.add('active-down'); } }); }