Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Árvores AVL (Balanceadas) - Definição e Exemplos, Slides de Algoritmos

Documento que apresenta a definição de árvores avl (árvores binárias balanceadas) e fornece um exemplo de como mantê-las balanceadas através de rotações à esquerda e direita.

O que você vai aprender

  • Como é feita a rotação à esquerda em uma árvore AVL?
  • Qual é a importância de manter uma árvore binária balanceada?
  • Quais são as regras a serem respeitadas durante as rotações em uma árvore AVL?
  • Como é feita a rotação à direita em uma árvore AVL?
  • Quais as condições para que uma árvore binária seja considerada AVL?

Tipologia: Slides

2022

Compartilhado em 07/11/2022

Mauricio_90
Mauricio_90 🇧🇷

4.5

(63)

227 documentos

1 / 24

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
SCE 182 – Algoritmos e Estruturas de Dados I
Árvores AVL (Balanceadas)
Profª.Drª. Roseli Ap. Francelin Romero
Fonte: Profa. Patrícia Marchetti
Revisão: Gedson Faria
SCC122 – Estruturas de Dados
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18

Pré-visualização parcial do texto

Baixe Árvores AVL (Balanceadas) - Definição e Exemplos e outras Slides em PDF para Algoritmos, somente na Docsity!

SCE 182 – Algoritmos e Estruturas de Dados I^ SCC122 – Estruturas de Dados Árvores AVL (Balanceadas)^ Profª.Drª. Roseli Ap. Francelin Romero^ Fonte: Profa. Patrícia MarchettiRevisão: Gedson Faria

Árvores AVL – (Balanceadas) Definição^ ^ A altura de uma árvore binária é o nívelmáximo de suas folhas (profundidade)^ ^ Uma árvore binária balanceada (AVL) é umaárvore binária na qual as alturas das duassubárvores de todo nó nunca difere em maisde 1.^ ^ O balanceamento de um NÓ é definido comoa altura de sua subárvore esquerda menos aaltura de sua subárvore direita.

Roseli A. F. Romero

Árvores AVL (Balanceada) – Exemplo^10000

Árvores AVL – (Balanceadas) ^ Se a probabilidade de pesquisar umdado for a mesma para todos os dados,uma árvore binária balanceadadeterminará a busca mais eficiente. ^ Mas os algoritmos de inserção eremoção já vistos até agora nãogarantem que essa árvore permanecerábalanceada.

Árvores Balanceadas - AVL ^ O desbalanceamento ocorre quando: ^ O NÓ é inserido é um descendenteesquerdo de um nó que tinhabalanceamento de 1 (U1 até U8)

OU ^ Se ele for um descendente direito de umnó que tinha balanceamento de –1 (U9até U12).

Árvores AVL (Balanceadas) ^ Para manter uma árvore balanceada, énecessário fazer uma transformação naárvore tal que: 1.^ o percurso em ordem da árvoretransformada seja o mesmo da árvoreoriginal (isto é, a árvore transformadacontinue sendo um árvore de buscabinária); 2.^ a árvore transformada fiquebalanceada.

Roseli A. F. Romero

Árvores AVL – Rotação DIREITA^ D

A^ C^ F^ G

B

M

E^ J^ K

L

IH

P^ Q

N^ O

R^ DESBALANCEOU

!^ SOLUÇÃO:^

Percursoem Ordem: RHDIBEANJOFKCLGPMQ ROTAÇÃO DIREITA

Árvores AVL – Rotação DIREITA

A^ C^ F^ G^ M

E^ J^ K

L

H^ I

P^ Q

N^ O

R ROTAÇÃO DIREITACONCLUÍDA

D^ B

ÁRVORE ESTÁ NOVAMENTE BALANCEADA!!!

Percursoem Ordem:RHDIBEANJOFKCLGPMQ

Árvores AVL (Balanceadas) ^ Nos 2 exemplos anteriores de rotação aesquerda e a direita as duas regrasforam mantidas: ^ o percurso em ordem da árvoretransformada deve ser o mesmo daárvore original (isto é, a árvoretransformada continue sendo um árvorede busca binária); ^ a árvore transformada continuabalanceada.

Árvores AVL (Balanceadas) ^ Para o rebalanceamento da árvore énecessário calcular o Fator de Balanceamentopara verificar qual rotação deve ser efetuadaafim de rebalanceá-la. ^ FB = h da subárvore direita - h da subárvoreesquerda ^ Se FB é negativo, as rotações são feitas àdireita ^ Se FB é positivo, as rotações são feitas àesquerda

Roseli A. F. Romero

Árvores AVL (Balanceadas)

FB(raiz)= Hd - He^4

-^2 = 2 FB(10)= Hd – He^3 -^2 = 1

Nó inserido

Solução: rotação à esquerdado nó 8, ou raiz.

Árvores AVL (Balanceadas)

10 15 912 Nó inserido Solução: rotação à esquerdado nó 8, ou raiz.

Árvores AVL (Balanceadas)^4

FB(raiz)= (^81062 ) 2 -^4 = -2 FB(4)=^2 -^1 = 1 Solução: rotação do nó 4 à esquerdaRotação do nó 8 à direita. Nó inserido

Árvores AVL (Balanceadas)

Solução: rotação do nó 4 à esquerdaRotação do nó 8 à direita. 8 410 (^62 5) Nó inserido