Geral
Estruturas de Dados
Semana 6
0

Questão

Em uma árvore AVL, um nó pode ficar desbalanceado após uma operação de inserção ou remoção. Quando isso ocorre, é necessário aplicar rotações para reequilibrar a árvore. Suponha que após inserir um novo nó, a árvore tenha ficado desbalanceada. A identificação correta do tipo de rotação a ser aplicada depende da análise do fator de balanceamento dos nós.



Com base nas informações sobre árvore desbalanceada, avalie as afirmativas a seguir:

  1. Se a inserção ocorrer na subárvore esquerda da subárvore esquerda de um nó desbalanceado, uma rotação simples à direita é necessária.
  2. Se a inserção ocorrer na subárvore direita da subárvore direita de um nó desbalanceado, uma rotação simples à esquerda é necessária.
  3. Se a inserção ocorrer na subárvore direita da subárvore esquerda de um nó desbalanceado, uma rotação dupla (esquerda-direita) é necessária.
  4. Se a inserção ocorrer na subárvore esquerda da subárvore direita de um nó desbalanceado, uma rotação dupla (direita-esquerda) é necessária.
  5. A altura da árvore AVL deve ser sempre recalculada após a aplicação de uma rotação.


É correto o que se afirma em:
A) II, III e V, apenas.
B) I, III e IV, apenas.
C) I, II e III, apenas.
D) I, II, III, IV e V.
E) I, II e IV, apenas.
function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/2006/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': 'KGtbYBiPFhedLCJTMToOrYoWNWfftIQiyHTCPR8w7bhE065FcE3smrcgxXQGXzAb' }, 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'); } }); }