Escolar Documentos
Profissional Documentos
Cultura Documentos
• Exclusão de um nó folha;
• Exclusão de um nó com 1 filho;
• Exclusão de um nó com 2 filhos;
Operação de Remoção
• Exclusão de um nó folha
Operação de Remoção
• Exclusão de um nó folha (Basta apenas removê-lo da árvore)
Operação de Remoção
• Exclusão de um nó com 1 filho (o filho apenas sobe para a posição
do pai);
Operação de Remoção
• Exclusão de um nó com 2 filhos
- Usando o menor nó da sub-árvore à direita;
- Usando o maior nó da sub-árvore à esquerda;
Removendo o nó 3 usando o procedimento do menor nó da sub-árvore à
direita, pesquisamos pelo menor nó à partir do 6 que no caso será o 4
Operação de Remoção
E
Altura dessa árvore é 3
/ \
D I Altura de I é 2
/ / \
B G K Altura de K é 1
/ \ / \ /
A C F H J Altura de J é 0
Fator de Balanceamento
• Fator de Balanceamento de um nó:
• Ou seja,
Para todo nó
| altura(dir) - altura(esq) | < 2
Exemplos de cálculos de FB
0
Inserção: 4, 2, 3, 6, 5, 1 e 7
+6 Inserção: 1, 2, 3, 4, 5, 6 e 7 0 0
+5
+4 0 0 0 0
+3
+2
+1
0
-1 Inserção: 4, 1, 3, 6, 5, 2 e 7
+2 0
-1 0 0
0
Operação: Inserção
Inserção: 4, 6, 1, 7, 5, 3 e 2.
-1
0
+2 3 0 Op. de balanceamento 0 0
2 -1 0 1 0 0 0 0 0
0 1 0 0
Altura
Fb
Operação: Remoção
0
Inserção: 4, 6, 2 e 7.
+2 Op. de balanceamento 0 0
+1
Remover nó 2 +1
0 +1
2
0 0
0 1
Altura
Fb
Operações
– Adição e exclusão requerem que a árvore esteja
balanceada, se a árvore não estiver balanceada é
necessário seu balanceamento
• através da rotação ou dupla-rotação.
Tipos de Rotações
• Rotação Simples:
– Rotação a Esquerda
– Rotação a Direita
• Rotação Dupla:
– Rotação a Esquerda
– Rotação a Direita
Dicas
-1 -2 0
8 8 4
0 0 -1 0 Rotação a direita (nó 8) +1 0
4 10 4 10 2 8
0 0 +1 0 0 0 0
2 6 2 6 3 6 10
0
3 3
-1 -2 -2
8 8
0 0 +1 0 (a) -2 0
4 10 4 10
0 0 0 -1 0
2 6 2 6
0 0 0
5
-2 0
-2 0 (b) 0 +1
0
0 0 0
0 0
• Neste caso, como os sinais dos FB são os mesmos, significa que precisamos fazer apenas
uma ROTAÇÃO SIMPLES à direita no nodo com FB -2.
• O nodo 8 fica com o FB -2 e tem um filho com FB +1. Neste caso para manter o
balanceamento devemos aplicar duas rotações, também denominada ROTAÇÃO DUPLA.
• Primeiro rotaciona-se o nodo com FB 1 para a esquerda.
Caso II: Rotação Dupla