Rotação Simples e Dupla Katia Guimarães

Slides:



Advertisements
Apresentações semelhantes
IFTO ESTRUTURA DE DADOS AULA 05 Prof. Manoel Campos da Silva Filho
Advertisements

Motivação para listas duplamente encadeadas e circulares
AULA 8 Profa. Sandra de Amo GBC053 – BCC
Unidade 7 SEQUÊNCIAS E REGULARIDADES
Celso C. Ribeiro Caroline T. Rocha
Pesquisas de Dados (Parte 2)
Árvores Equilibradas Sumário Splay B-tree Vermelho-Preto AA e BB
Organização e Recuperação da Informação
Algoritmos BUSCA E INSERÇÃO
Para Casa – Montar o cariograma
AULA PRÁTICA DIRIGIDA Nº 02
Série de Exercícios.
INE 5384 Estruturas de Dados Profa. Patrícia Vilain
MC 202 – Estruturas de dados
Árvore Binária - altura máxima A: Inserção de 1, 2, 3, 4, 5, 6 e 7 Pior caso: O(n)
Árvores.

DIAGRAMA DE ATIVIDADES
Arquivos Extensíveis.
Princípio aditivo da igualdade
André Lopes Pereira Luiz Carlos Barboza Júnior
Árvores Introdução e Aplicações Árvores de Busca Binária Fundamentos
Árvores AVL.
Classificação e Pesquisa de Dados
Árvores Balanceadas (AVL)
Árvores Binárias de Pesquisa (ABP)
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Fraction Action FRACÇÕES.
Indexação de Arquivos Página de rosto.
EXERCÍCIOS PARA GUARDA-REDES
Árvore Binária de Busca
Expressão algébrica a partir da representação gráfica da função
Estrutura de Dados Unidade 16 Simulação da função EstáNaÁrvore utilizando recursão – 16.1 Prof. Dr. Roberto Ferrari Jr.
Algoritmos e Estruturas de Dados II
Pesquisa em Memória Primária
Árvores binárias de pesquisa com balanceamento
INF 1010 Estruturas de Dados Avançadas
1 António Arnaut Duarte. 2 Sumário: primeiros passos;primeiros passos formatar fundo;formatar fundo configurar apresentação;configurar apresentação animação.
Estruturas de Dados com Jogos
Estruturas de Dados com Jogos
Estruturas de Dados com Jogos
Salas de Matemática.
Principais operações em Listas TPA Listas Simples Inserção no Final 1.void insereNofinalDaLista(Lista *l, Elemento e){ 2.Lista paux,p; 3. p.
Algorítmos e estrutura de dados III
Algorítmos e estrutura de dados III Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Operações de Inserção e Remoção – BTree Resumo
Algoritmos e Estrutura de Dados III
1. Se este nó é raiz de uma árvore QuasiEquilibrada de ordem k, e
Árvores Balanceadas Liliane Rose Benning Salgado.
Árvores Binárias e Encaminhamentos
Katia S. Guimarães Heaps Katia S. Guimarães
Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada a um dado pode ser qualquer.
1 2 Observa ilustração. Cria um texto. Observa ilustração.
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
Rio Verde - Goiás - Brasil
Árvore Binária de Busca
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
Árvores Prof. Dr. rer. nat. Daniel Duarte Abdala DAS 5102 – Fundamentos da Estrutura da Informação 1.
Árvores Vermelho-Preto
Definição: Uma árvore binária vazia é sempre balanceada por altura. Se T não é vazia e TL e TR são suas sub-árvores da esquerda e direita, então T é balanceada.
Árvores AVL Balanceadas (Árvore Binária Balanceada)
© 2011 Pearson Prentice Hall. Todos os direitos reservados.slide 1 © 2011 Pearson Prentice Hall. Todos os direitos reservados.slide 1 © 2011 Pearson Prentice.
Prof. Hilton Cardoso Marins Junior
Árvores Rubro-Negras São árvores balanceadas segundo um critério ligeiramente diferente do usado em árvores AVL A todos os nós é associada uma cor que.
Árvores AVL Algoritmos e Estruturas de Dados - IF672
Estruturas Avançadas de Dados UNISINOS
AVL Árvores Equilibradas Sumário AVL Splay B Vermelho-Preto AA e BB Multidimensionais quaternárias k-d [Pesquisa Lexicográfica tries multivia tries binárias.
1 de outubro de Árvores de Busca e Árvores AVL Parte 1 Katia Guimarães.
Heaps Katia S. Guimarães
Árvores Binárias e Árvores AVL Katia Guimarães. Árvores Binárias e Árvores AVL Katia S. Guimarães
Transcrição da apresentação:

Rotação Simples e Dupla Katia Guimarães Árvores AVL Rotação Simples e Dupla Katia Guimarães

Possível Problema Exemplo: 50, 20, 39, 42, 40 ... 50 20 A árvore binária pode degenerar para uma estrutura próxima a uma lista ligada, e o tempo de acesso deixa de ser logarítmico. 39 42 40

Solução Procurar manter todas as folhas mais ou menos na mesma altura. PROPRIEDADE AVL: Para todo nó | altura(dir) - altura(esq) | < 2

Possível Problema Exemplo: 50, 20, 10, ... 50 20 10 Após a inserção do elemento 10, a árvore binária perde a propriedade AVL. SOLUÇÃO: Rotação.

Rotação Simples à Direita Inserção à esquerda de árvore desbalanceada à esquerda (bal = -1) 50 20 10 50 20 10 Promover o elemento do meio através de um giro no sentido horário.

Rotação Simples à Esquerda Inserção à direita de árvore desbalanceada à direita (bal = +1) 10 20 50 10 20 50 Promover o elemento do meio através de um giro no sentido anti-horário.

Rotação Simples Inserção à esquerda de nó crítico A com (bal = -1), à esquerda do nó B. raiz A (-1) B 4 C 2

Rotação Simples Inserção à esquerda de nó crítico A com (bal = -1), à esquerda do nó B. (-1) A Dir.A Alt=2 B -1 (0) Dir.B Alt=2 C (0) 1 (0) 1

Rotação Simples Inserção à esquerda de nó crítico A com (bal = -1), à esquerda do nó B. B A C 1 Dir.B Alt=2 Dir.A Alt=2 1

Rotação Simples Inserção à esquerda de nó crítico A com (bal = -1), à esquerda do nó B. raiz B (0) C A (0) (1) 4 (1)

Rotação Dupla Inserção à esquerda de nó crítico A com (bal = -1), à direita do nó B. raiz B C (-1) A 2 5

Rotação Dupla Inserção à esquerda de nó crítico A com (bal = -1), à direita do nó B. B C (-1) A 2 -2 +1 -1 1 1

Rotação Dupla Inserção à esquerda de nó crítico A com (bal = -1), à direita do nó B. A altura da sub-árvore é igual à da original. C A (-1) B A Dir.A B 1 Dir.A E D C 1 E D 1 2 Qualquer que seja a posição de inclusão na sub-árvore de C, a árvore terá a propriedade AVL.

Rotação Dupla Inserção à direita do nó crítico A com (bal = +1), à esquerda do nó B. raiz (+1) A B C 2

Rotação Dupla Inserção à direita do nó crítico A com (bal = +1), à esquerda do nó B. A (+1) +2 B -1 C -1 1 2 1

Rotação Dupla Inserção à direita de nó crítico A com (bal = +1), à esquerda do nó B. C A B A 1 Esq.A E D Esq.A B 1 C 1 E D 2 Qualquer que seja a posição de inclusão na sub-árvore de C, a árvore terá a propriedade AVL. IMPORTANTE: Os balances de A e de B podem ser –1 e 0, respectivamente.

Rotação Dupla Inserção à direita de nó crítico A com (bal = +1), à esquerda do nó B. E D B C 1 A Esq.A Os valores dos balances de cada nó são os mesmos, a menos daqueles nos nós A, B e C, que tomam valores dependendo se a inclusão foi à esquerda ou à direita de C.

Considerações para Implementação Recursiva Encaminhamento top-down: 1. O processamento se inicia pela raiz. 2. O novo vértice inserido será sempre uma folha. 3. Esta nova folha tem balance = 0, e retorna ao pai a informação (Altura Alterada = V, <próprio endereço>)

Considerações para Implementação Recursiva Encaminhamento bottom-up: Se um nó pai receber a info: (V, <ender>) • Calcular novo balance: Se filho à esq, então Bal  Bal – 1 senão Bal  Bal +1 • Se Bal = 0 então devolver (F, <próprio ender>) Se Bal = +1 ou –1 então devolver (V, <próprio ender>) Se Bal = +2 ou –2 então { rotacionar; devolver (F, <ender. nova raiz>) }

Considerações para Implementação Recursiva Encaminhamento bottom-up: Se Bal = +1 ou –1 então devolver (V, <próprio ender>)

Considerações para Implementação Recursiva Encaminhamento bottom-up: Se Bal = 0 então devolver (F, <próprio ender>)

Considerações para Implementação Recursiva Se Bal = +2 ou –2 então { rotacionar; devolver (F, <ender. nova raiz>) } A altura da sub-árvore é igual à da original. C A (-1) B A Dir.A B 1 Dir.A E D C 1 E D 1 2

Considerações para Implementação Recursiva Encaminhamento bottom-up: Se um nó pai receber a info: (F, <ender>) então devolver (F, <próprio ender>)