tad rvore avl n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
TAD – Árvore AVL PowerPoint Presentation
Download Presentation
TAD – Árvore AVL

Loading in 2 Seconds...

play fullscreen
1 / 6

TAD – Árvore AVL - PowerPoint PPT Presentation


  • 72 Views
  • Uploaded on

TAD – Árvore AVL. ATAI. Árvore AVL.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

TAD – Árvore AVL


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
rvore avl
Árvore AVL

As Árvores Binárias de Pesquisa têm uma séria desvantagem que pode afectar o tempo necessário para recuperar um item armazenado. A desvantagem é que a estrutura da árvore depende da ordem em que os elementos são inseridos. Sabemos que se inserirmos os elementos já em ordem, a estrutura da árvore será igual a de uma lista encadeada e o tempo médio para recuperar uma informação da árvore aumenta.

A procura é mais rápida na árvore binária de pesquisa equilibrada/balanceada.

Árvore AVL é uma árvore binária de pesquisa equilibrada em altura.

Para cada nó da árvore as alturas das respectivas subárvores esquerda e direita diferem apenas em um.

rvore avl factor de equil brio
Árvore AVL - factor de equilíbrio

Para manter o equilíbrio da árvore guardamos em cada nó um “factor de equilíbrio”, designado por balance (bal) do tipo inteiro.

bal = altura (right) - altura (left)

Como estes duas alturas diferem de pelo menos em 1, o valor de bal deve ser -1, 0 ou +1.

As operações são iguais à da árvore binária de pesquisa. Só as operações de insert and deletekey devem ser modificados. Elas devem manter o equilíbrio da árvore.

rvore avl opera o insert
Árvore AVL - operação insert
  • Insert determina a localização do novo elemento e adiciona-o.
  • Durante a operação insert permitimos temporariamente que o valor de bal possa ser -2 e +2.
  • Quando isto acontece, a árvore deixa de estar equilibrada, sendo necessário uma ou duas rotações para a equilibrar de novo.
  • Distinguimos entre rotações simples e duplas. As rotações simples diferem entre rotação esquerda e rotação direita.
rvore avl opera o insert1
Árvore AVL - operação insert

1. Adicionar o nó como em árvore binária de pesquisa. O caminho para este nó é o caminho de pesquisa.

2. Subir no caminho de pesquisa actualizando os valores do bal dos nós, até encontrar um nó não balanceado mais perto do novo nó ( tem o valor do bal +2 ou -2). Chamar este nó o eixo.

3. A. Se não existir o eixo, a árvore continua a ser árvore AVL e podemos acabar a operação de inserção actualizando os valores do bal de todos os nós do caminho de pesquisa.

B. Se o eixo existe, então para manter a árvore AVL devemos efectuar rotação (direita, esquerda ou dupla) de modo que os valores do bal fiquem correctos e a árvore é uma árvore AVL.

rvore avl tipos de rota es
Árvore AVL - Tipos de rotações

Que tipo de rotação devemos fazer?

  • Se o bal do eixo é negativo (sub-árvore esquerda é mais comprida), então

se o bal do nó seguinte do caminho de pesquisa é negativo, então rotação para direita, se não (o bal é positivo), então rotação dupla (esquerda-direita)

  • Se o bal do eixo é positivo (sub-árvore direita é mais comprida), então

se o bal do nó seguinte do caminho de pesquisa é positivo, então rotação para esquerda, se não (o bal é negativo), então rotação dupla (direita-esquerda)