arvore avl wocode
TRANSCRIPT
-
rvores
Monael Pinheiro Ribeiro, M.Sc.
So Bernardo do Campo 12 de novembro de 2011
Centro Universitrio da FEI Departamento de Cincia da Computao
Centro Universitrio da FEI Departamento de Cincia da Computao
-
rvores
Definio rvore s. f. 1.Bot. Vegetal lenhoso, de tronco alto, que se
ramifica a maior ou menor altura do solo. 2. Mec., Autom. Pea, geralmente alongada, que serve para transmitir ou receber o movimento nas mquinas. 3. Nut. Colocar mastros: A. uma nau.
rvore s. f. 1. Vegetal de tronco lenhoso cujos ramos s saem a certa altura do solo. 2. Qualquer representao ou esquematizao que, pelas suas ramificaes, lembre essa planta. 3. Pea principal que transmite o movimento de uma mquina. 4. Mastro completo (de navio). 5. Pot. Navio.
-
rvores
Definio rvore s. f. 1.Bot. Vegetal lenhoso, de tronco alto, que se
ramifica a maior ou menor altura do solo. 2. Mec., Autom. Pea, geralmente alongada, que serve para transmitir ou receber o movimento nas mquinas. 3. Nut. Colocar mastros: A. uma nau.
rvore s. f. 1. Vegetal de tronco lenhoso cujos ramos s saem a certa altura do solo. 2. Qualquer representao ou esquematizao que, pelas suas ramificaes, lembre essa planta. 3. Pea principal que transmite o movimento de uma mquina. 4. Mastro completo (de navio). 5. Pot. Navio.
-
rvores
Definio
rvore: no contexto da programao e cincia da computao, uma estrutura de dados que herda as caractersticas das topologias em rvore.
Conceitualmente diferente das listas encadeadas, em que os dados se encontram numa sequncia, nas rvores os dados esto dispostos de forma hierrquica.
A rvore composta por um elemento principal chamado raiz, que possui ligaes para outros elementos, que so denominados de galhos ou filhos. Estes galhos levam a outros elementos que tambm possuem outros galhos. O elemento que no possui galhos conhecido como folha ou n terminal.
Fonte: wikipedia
-
rvores
Exemplos:
-
rvores
Exemplos:
-
rvores
Exemplos:
-
rvores
Uma rvore enraizada T, ou simplesmente rvore, um conjunto finito de elementos denominados ns tais que:
T = a rvore dita vazia. Ou
Existe um n especial r, chamado raiz de T;
os ns restantes constituem um nico conjunto, que pode ser vazio ou no, que so divididos em b (b 1) conjuntos distintos no vazios que so as subrvores de r, cada subrvore a qual , por sua vez, uma rvore.
-
rvores
Uma rvore enraizada T, ou simplesmente rvore, um conjunto finito de elementos denominados ns tais que:
T = a rvore dita vazia. Ou
Existe um n especial r, chamado raiz de T;
os ns restantes constituem um nico conjunto, que pode ser vazio ou no, que so divididos em b (b 1) conjuntos distintos no vazios que so as subrvores de r, cada subrvore a qual , por sua vez, uma rvore.
rvore Vazia!
-
rvores
Uma rvore enraizada T, ou simplesmente rvore, um conjunto finito de elementos denominados ns tais que:
T = a rvore dita vazia. Ou
Existe um n especial r, chamado raiz de T;
os ns restantes constituem um nico conjunto, que pode ser vazio ou no, que so divididos em b (b 1) conjuntos distintos no vazios que so as subrvores de r, cada subrvore a qual , por sua vez, uma rvore.
r N raiz da rvore
-
rvores
Uma rvore enraizada T, ou simplesmente rvore, um conjunto finito de elementos denominados ns tais que:
T = a rvore dita vazia. Ou
Existe um n especial r, chamado raiz de T;
os ns restantes constituem um nico conjunto, que pode ser vazio ou no. Esses so divididos em b (b 1) conjuntos distintos no vazios que so as subrvores de r, cada subrvore a qual , por sua vez, uma rvore.
r
b conjuntos vazios!
...
-
rvores
Uma rvore enraizada T, ou simplesmente rvore, um conjunto finito de elementos denominados ns tais que:
T = a rvore dita vazia. Ou
Existe um n especial r, chamado raiz de T;
os ns restantes constituem um nico conjunto, que pode ser vazio ou no. Esses so divididos em b (b 1) conjuntos distintos no vazios que so as subrvores de r, cada subrvore a qual , por sua vez, uma rvore.
r
b conjuntos no vazios!
... s1 s2 sb
-
rvores
Uma rvore enraizada T, ou simplesmente rvore, um conjunto finito de elementos denominados ns tais que:
T = a rvore dita vazia. Ou
Existe um n especial r, chamado raiz de T;
os ns restantes constituem um nico conjunto, que pode ser vazio ou no. Esses so divididos em b (b 1) conjuntos distintos no vazios que so as subrvores de r, cada subrvore a qual , por sua vez, uma rvore.
r
b conjuntos no vazios! Que por sua vez, so rvores
... s1 s2 sb
-
rvores
Motivao:
Por que usar rvores?
-
rvores
Motivao:
Por que usar rvores?
Custo
-
rvores
Motivao:
Por que usar rvores?
Custo
uma ED muito eficiente para armazenar informaes
-
rvores
Motivao:
Por que usar rvores?
Custo
uma ED muito eficiente para armazenar informaes
particularmente adequada quando existe a necessidade de considerar todos ou alguma combinao de requisitos, tais como:
-
rvores
Motivao:
Por que usar rvores?
Custo
uma ED muito eficiente para armazenar informaes
particularmente adequada quando existe a necessidade de considerar todos ou alguma combinao de requisitos, tais como:
Acesso Direto e Seqencial eficientes
Facilidade de Insero e retirada de itens
Otimizao da utilizao da memria
-
rvores
Motivao:
Por que usar rvores?
Custo
Operao Listas rvores
Insero O(n) O(logb n)
Remoo O(n) O(logb n)
Busca O(n) O(logb n)
-
rvores
Exemplos de representaes:
Parnteses Aninhados
Diagrama de Incluso
( A (B) ( C (D (G) (H)) (E) (F (I)) ) )
-
rvores
Exemplos de representaes:
Hierrquica
-
rvores
Definies
Ns filhos, pais, tios, irmos e avs
Seja v o n raiz da subrvore T.
Os ns razes w1, w2, ... wj das subrvores de v so chamados filhos de v.
v chamado pai de w1, w2, ... wj .
Os ns w1, w2, ... wj so irmos.
Se z filho de w1 ento w2 tio de z e v av de z.
v
w1 w2 wj
z
...
-
rvores
Definies
Ns filhos, pais, tios, irmos e avs
Seja v o n raiz da subrvore T.
Os ns razes w1, w2, ... wj das subrvores de v so chamados filhos de v.
v chamado pai de w1, w2, ... wj .
Os ns w1, w2, ... wj so irmos.
Se z filho de w1 ento w2 tio de z e v av de z.
v
w1 w2 wj
z
Filhos de v ...
-
rvores
Definies
Ns filhos, pais, tios, irmos e avs
Seja v o n raiz da subrvore T.
Os ns razes w1, w2, ... wj das subrvores de v so chamados filhos de v.
v chamado pai de w1, w2, ... wj .
Os ns w1, w2, ... wj so irmos.
Se z filho de w1 ento w2 tio de z e v av de z.
v
w1 w2 wj
z
Pai de w1, w2, ..., wj
...
-
rvores
Definies
Ns filhos, pais, tios, irmos e avs
Seja v o n raiz da subrvore T.
Os ns razes w1, w2, ... wj das subrvores de v so chamados filhos de v.
v chamado pai de w1, w2, ... wj .
Os ns w1, w2, ... wj so irmos.
Se z filho de w1 ento w2 tio de z e v av de z.
v
w1 w2 wj
z
Irmos entre si ...
-
rvores
Definies
Ns filhos, pais, tios, irmos e avs
Seja v o n raiz da subrvore T.
Os ns razes w1, w2, ... wj das subrvores de v so chamados filhos de v.
v chamado pai de w1, w2, ... wj .
Os ns w1, w2, ... wj so irmos.
Se z filho de w1 ento w2 tio de z e v av de z.
v
w1 w2 wj
z w2 tio de z
...
-
rvores
Definies
Ns filhos, pais, tios, irmos e avs
Seja v o n raiz da subrvore T.
Os ns razes w1, w2, ... wj das subrvores de v so chamados filhos de v.
v chamado pai de w1, w2, ... wj .
Os ns w1, w2, ... wj so irmos.
Se z filho de w1 ento w2 tio de z e v av de z.
v
w1 w2 wj
z
v av de z
...
-
rvores
Definies
Grau de sada, descendente e ancestral
O nmero de filhos de um n chamado grau de sada desse n.
Se x pertence subrvore de v, ento, x descendente de v e v ancestral de x.
v
w1 w2 wj
z
...
-
rvores
Definies
Grau de sada, descendente e ancestral
O nmero de filhos de um n chamado grau de sada desse n.
Se x pertence subrvore de v, ento, x descendente de v e v ancestral de x.
v
w1 w2 wj
z
O n v tem grau de sada j
...
-
rvores
Definies
Grau de sada, descendente e ancestral
O nmero de filhos de um n chamado grau de sada desse n.
Se x pertence subrvore de v, ento, x descendente de v e v ancestral de x.
v
w1 w2 wj
z z descendente de w1.
...
-
rvores
Definies
Grau de sada, descendente e ancestral
O nmero de filhos de um n chamado grau de sada desse n.
Se x pertence subrvore de v, ento, x descendente de v e v ancestral de x.
v
w1 w2 wj
z z descendente de w1.
...
w1 ancestral de z.
-
rvores
Definies
N folha e N interior
Um n que no possui descendentes chamado de n folha, ou seja, um n folha aquele com grau de sada nulo.
Um n que no folha (isto , possui grau de sada diferente de zero) chamado n interior ou n interno.
v
w1 w2 wj
z
...
-
rvores
Definies
N folha e N interior
Um n que no possui descendentes chamado de n folha, ou seja, um n folha aquele com grau de sada nulo.
Um n que no folha (isto , possui grau de sada diferente de zero) chamado n interior ou n interno.
v
w1 w2 wj
z
...
w1 possui grau de sada igual a 1. Portanto, um n interior ou interno
-
rvores
Definies
N folha e N interior
Um n que no possui descendentes chamado de n folha, ou seja, um n folha aquele com grau de sada nulo.
Um n que no folha (isto , possui grau de sada diferente de zero) chamado n interior ou n interno.
v
w1 w2 wj
z
...
z possui grau de sada igual a 0. Portanto, um n folha.
-
rvores
Definies
Grau de uma rvore
O grau de uma rvore o mximo entre os graus de seus ns.
v
w1 w2 wj
z
...
-
rvores
Definies
Grau de uma rvore
O grau de uma rvore o mximo entre os graus de seus ns.
v
w1 w2 wj
z
...
O n v de grau de sada j, j>2, o n de maior grau na rvore. Portanto, j o grau da rvore.
-
rvores
Definies
Nvel de um N e Altura de um N
O nvel ou profundidade, de um n o nmero de ns do caminho da raiz at o n. O nvel da raiz, portanto, 0.
A altura de um n v o nmero de ns no maior caminho de v at um de seus descendentes. As folhas tm altura 0.
v
w1 w2 wj
z
...
1
2
O nvel do n z 2.
-
rvores
Definies
Nvel de um N e Altura de um N
O nvel ou profundidade, de um n o nmero de ns do caminho da raiz at o n. O nvel da raiz, portanto, 0.
A altura de um n v o nmero de ns no maior caminho de v at um de seus descendentes. As folhas tm altura 0.
v
w1 w2 wj
z
...
2
1
A altura do n v 2.
-
rvores
Definies
Nvel da Raiz e Altura de uma rvore
O nvel da raiz 0.
A altura de uma rvore igual ao mximo nvel de seus ns. Representa-se a altura de rvore T por h(T).
v
w1 w2 wj
z
... 2
1 O maior nvel entres os ns da rvore 2, portanto a altura da rvore 2.
-
rvores
Definies
rvore Ordenada
Uma rvore ordenada aquela na qual os filhos de cada n esto ordenados. Assume-se ordenao da esquerda para a direita
-
rvores
Definies
rvore Cheia
Uma rvore de grau d uma rvore cheia se possui o nmero mximo de ns, isto , todos os ns tem nmero mximo de filhos exceto as folhas, e todas as folhas esto na mesma altura.
-
rvores
Quanto a implementao, as rvores podem ser:
Estticas: Os elementos so armazenados em um vetor.
Dinmicas: Os elementos so alocados dinamicamente conforme necessidade. Cada elemento armazena os dados e um ponteiro para o filho da direita, esquerda e pai.
-
rvores
Principais Estrutura de Dados do tipo rvore:
rvore Binria
rvore AVL
rvore B
rvore B+
rvore Rubro-Negra
Heaps *
-
rvores AVL
Monael Pinheiro Ribeiro, M.Sc.
Centro Universitrio da FEI Departamento de Cincia da Computao
-
rvore Binria de Busca
A forma de uma rvore Binria de Busca depende da ordem em que seus elementos so inseridos.
Elementos: B D K M P R
-
rvore Binria de Busca
A forma de uma rvore Binria de Busca depende da ordem em que seus elementos so inseridos.
Elementos: B D K M P R
-
rvore Binria de Busca
A forma de uma rvore Binria de Busca depende da ordem em que seus elementos so inseridos.
Elementos: B D K M P R
Qual o custo para efetuar uma
busca nesta rvore ?
-
rvores
Definies
rvore Zigue Zague
Trata-se de uma rvore Binria de Busca com altura mxima. Onde todos os ns internos possuem exatamente um filho, com exceo da folha.
-
rvore AVL
Como vimos em nas rvores binrias, a vantagem de usar uma ED de rvore justamente seu desempenho. Mas para garantir o bom desempenho dos algoritmos em rvores, deve-se garantir seu balanceamento
-
rvore AVL
Como vimos em nas rvores binrias, a vantagem de usar uma ED de rvore justamente seu desempenho. Mas para garantir o bom desempenho dos algoritmos em rvores, deve-se garantir seu balanceamento
As rvores AVL so um tipo de rvore
balanceada que garantem que as operaes
bsicas consumam no pior caso O(log2n).
-
rvore AVL
rvore Binria de Busca:
-
rvore AVL
rvore AVL:
-
rvore AVL
So tambm conhecidas por rvores Balanceadas pela Altura
O nome vem de seus criadores:
Georgy Maximovixh Andelson-Velsky, e
Evgenii Mikhailovich Landis
As rvores AVL possuem a seguinte propriedade:
Dado qualquer n da rvore, a diferena entre a altura do seu ramo esquerdo e a altura do seu ramo direito de no mximo de uma unidade.
08/01/1922 06/10/1921 - 12/12/1997
-
rvore AVL
As rvores AVL possuem a seguinte propriedade:
Dado qualquer n da rvore, a diferena entre a altura do seu ramo esquerdo e a altura do seu ramo direito de no mximo de uma unidade.
-
rvore AVL
As rvores AVL possuem a seguinte propriedade:
Dado qualquer n da rvore, a diferena entre a altura do seu ramo esquerdo e a altura do seu ramo direito de no mximo de uma unidade.
As Arvores AVL so rvores Binrias de Busca
-
rvore AVL
Em Cincia da Computao uma rvore AVL uma estrutura de dados como a rvore binria de busca que:
Consiste de uma seqencia de registros
Cada registro tem quatro campos:
uma campo para a chave.
um ponteiro para o filho da esquerda (subrvore da esquerda)
um ponteiro para o filho da direita (subrvore da direita)
um ponteiro para o pai. (n pai)
Ponteiro
para raiz
Quantidade
N da rvore
pai
esquerda chave direita
-
rvore AVL
Exemplo de representao de uma rvore AVL
-
rvore AVL
Definio
Uma rvore Binria de Busca uma rvore AVL se, e somente se, para cada n (incluindo a raiz) a altura do ramo esquerdo difere em no mximo uma unidade da altura do ramo direito.
A diferena entre essas alturas chamada de fator de balanceamento do n.
Este fator deve, ento, ser -1, 0 ou 1 em todos os ns para que a rvore esteja balanceada.
Se um n uma folha, seu fator de balanceamento 0.
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
-
Fator de Balanceamento
uma rvore balanceada ?
-
Fator de Balanceamento
uma rvore balanceada ?
-
Fator de Balanceamento
uma rvore balanceada ?
Por que?
-
Fator de Balanceamento
-
rvore AVL
A altura h de uma rvore AVL de n chaves de no mximo 1.44 log
2(n + 1)
Esse resultado mostra a importncia e utilidade de uma rvore AVL, pois a busca, insero e remoo tem complexidade de tempo O(log
2n) no pior caso.
Inseres e remoes feitas numa rvore AVL podem modificar a sua estrutura. Deve-se garantir que o balanceamento seja mantido.
Para isso, pode-se ter que mudar a estrutura da rvore em alguns de seus ns. A mudana da estrutura da rvore feita por dois tipos de rotaes em ramos da rvore: left-rotate e right-rotate.
-
Rotaes
As rotaes so funes executadas quando se insere e remove ns de uma rvore balanceada, como a rvore AVL, com o objetivo de manter o balanceamento.
-
Rotaes
As rotaes so funes executadas quando se insere e remove ns de uma rvore balanceada, como a rvore AVL, com o objetivo de manter o balanceamento.
Rotao para Esquerda:
-
Rotaes
As rotaes so funes executadas quando se insere e remove ns de uma rvore balanceada, como a rvore AVL, com o objetivo de manter o balanceamento.
Rotao para Esquerda:
-
Rotaes
Rotao para Esquerda
Passos:
Define-se x e y.
Subrvore da esquerda de y passa a ser subrvore da direita de x.
O pai de x passa a ser pai de y.
Se x no possuir pai, ento y ser raiz da rvore.
seno, se x for filho direito, y passa a ser filho direito do pai de x.
seno, y passa a ser filho esquerdo do pai de x.
x passa a ser filho da esquerda de y.
-
Rotaes
As rotaes so funes executadas quando se insere e remove ns de uma rvore balanceada, como a rvore AVL, com o objetivo de manter o balanceamento.
Rotao para Direita:
-
Rotaes
As rotaes so funes executadas quando se insere e remove ns de uma rvore balanceada, como a rvore AVL, com o objetivo de manter o balanceamento.
Rotao para Direita:
-
Rotaes
Rotao para Direita
Passos:
Define-se x e y.
Subrvore da direita de x passa a ser subrvore da direita de y.
O pai de y passa a ser pai de x.
Se y no possuir pai, ento x ser raiz da rvore.
seno, se y for filho direito, x passa a ser filho direito do pai de y.
seno, x passa a ser filho esquerdo do pai de y.
y passa a ser filho da direita de x.
-
rvore AVL
Insero
A insero de um elemento em uma rvore AVL pode ser realizada em tempo O(log
2n)
Na realidade, usa-se uma verso modificada da insero em uma rvore binria de busca.
A seguir, para garantir o balanceamento da rvore AVL, invoca-se um procedimento auxiliar que verifica os ns e promove rotaes.
-
Lembrando a insero em uma rvore Binria de Busca
Inserir
Caso particular (rvore vazia):
Aloque espao para o item e atribua-lhe os dados;
Faa com que o campo raiz da rvore aponte para o novo item.
Caso geral (se houver itens na rvore):
Percorrer a partir da raiz todos os itens, checando:
Se o campo chave do item for maior que a chave do novo item:
V para o filho esquerdo do item.
Se o campo chave do item for menor que a chave do novo item:
V para o filho direito do item.
At encontrar um item nulo. Ao encontrar:
Se o campo chave do pai for maior que a chave do novo item:
Faa campo esquerda do pai apontar para o novo item.
Se o campo chave do pai for menor que a chave do novo item:
Faa campo direita do pai apontar para o novo item.
Faa campo pai do novo item apontar para o pai.
Incremente o campo quantidade da rvore em uma unidade.
-
rvore AVL
Insero
No caso da insero em uma rvore AVL, acrescentar ao final a seguinte instruo:
Invocar o procedimento para correo do balanceamento eventualmente quebrado com a insero.
-
Insero em uma rvore AVL
Inserir
Caso particular (rvore vazia):
Aloque espao para o item e atribua-lhe os dados;
Faa com que o campo raiz da rvore aponte para o novo item.
Caso geral (se houver itens na rvore):
Percorrer a partir da raiz todos os itens, checando:
Se o campo chave do item for maior que a chave do novo item:
V para o filho esquerdo do item.
Se o campo chave do item for menor que a chave do novo item:
V para o filho direito do item.
At encontrar um item nulo. Ao encontrar:
Se o campo chave do pai for maior que a chave do novo item:
Faa campo esquerda do pai apontar para o novo item.
Se o campo chave do pai for menor que a chave do novo item:
Faa campo direita do pai apontar para o novo item.
Faa campo pai do novo item apontar para o pai.
Incremente o campo quantidade da rvore em uma unidade.
Invocar o procedimento de correo de balanceamento da rvore AVL.
-
rvore AVL
Remoo
A remoo de um elemento em uma rvore AVL pode ser realizada tambm em tempo O(log
2n)
Na realidade, usa-se uma verso modificada da remoo em uma rvore binria de busca.
E, para garantir o balanceamento da rvore AVL, invoca-se um procedimento auxiliar que verifica os ns e promove rotaes.
-
Lembrando a remoo em uma rvore Binria de Busca
Remover
Caso 1: removendo um n folha:
Localize o n a ser removido. Se for um n folha, ento:
Se no for raiz:
Faa o pai do n a ser removido apontar para NULL.
Se for raiz:
Faa o campo raiz da rvore apontar para NULL.
Caso 2: removendo um n com 1 filho:
Localize o n a ser removido. Se o n tiver apenas 1 filho:
Se no for raiz:
Faa o pai do n a ser removido apontar para o neto.
Se for raiz:
Faa o campo raiz da rvore apontar para o neto.
Caso 3: removendo um n com 2 filhos:
Localize o n a ser removido. Se o n tiver 2 filhos:
Busque o antecessor ou sucessor;
Se o sucessor/antecessor tiver filhos, aplique a remoo recursivamente sobre a subrvore do sucessor/antecessor;
Substitua o n a ser removido pelo antecessor ou sucessor.
-
rvore AVL
Remoo
No caso da remoo em uma rvore AVL, acrescentar ao final a seguinte instruo:
Invocar o procedimento para correo do balanceamento eventualmente quebrado com a remoo.
-
Remoo em uma rvore AVL
Remover
Caso 1: removendo um n folha:
Localize o n a ser removido. Se for um n folha, ento:
Se no for raiz:
Faa o pai do n a ser removido apontar para NULL.
Se for raiz:
Faa o campo raiz da rvore apontar para NULL.
Caso 2: removendo um n com 1 filho:
Localize o n a ser removido. Se o n tiver apenas 1 filho:
Se no for raiz:
Faa o pai do n a ser removido apontar para o neto.
Se for raiz:
Faa o campo raiz da rvore apontar para o neto.
Caso 3: removendo um n com 2 filhos:
Localize o n a ser removido. Se o n tiver 2 filhos:
Busque o antecessor ou sucessor;
Se o sucessor/antecessor tiver filhos, aplique a remoo recursivamente sobre a subrvore do sucessor/antecessor;
Substitua o n a ser removido pelo antecessor ou sucessor.
Invocar o procedimento de correo de balanceamento da rvore AVL.
-
Correo de balanceamento em uma rvore AVL
A insero e a remoo de ns em uma rvore AVL requerem que os ancestrais do n inserido/removido tenham seus fatores de balanceamento verificados.
Para cada operao de insero ou remoo, verifica-se cada n ancestral, at a raiz.
Caso o n verificado tenha fator de balanceamento < -1 ou > 1, quatro casos (que na verdade so dois casos com simetria) devem ser considerados para efetuar as rotaes e garantir o balanceamento.
-
Correo de balanceamento em uma rvore AVL
Seja R o n desbalanceado, E seu filho esquerdo, D seu filho direito e P seu pai (que pode no existir se R for a raiz da rvore)
Caso 1: Se o fator de R -2 e o fator de D 0 (right-right),
Ento: Promover left-rotate em R.
Caso 2: Se o fator de R -2 e o fator de D = 1 (right-left),
Ento: Promover right-rotate em D e left-rotate em R.
Caso 3: Se o fator de R 2 e o fator de E 0 (left-left),
Ento: Promover right-rotate em R.
Caso 4: Se o fator de R 2 e o fator de E = -1 (left-right):
Ento: Promover left-rotate em E e right-rotate em R.
-
caso 1 caso 3
Correo de balanceamento
-
caso 1 caso 3
left-rotate em R right-rotate em R
Correo de balanceamento
-
caso 1 caso 3
Correo de balanceamento
-
caso 2 caso 4
Correo de balanceamento
-
caso 2 caso 4
right-rotate em D left-rotate em E
Correo de balanceamento
-
caso 2 caso 4
Correo de balanceamento
-
caso 2 caso 4
left-rotate em R right-rotate em R
Correo de balanceamento
-
caso 2 caso 4
Correo de balanceamento