Árvore Binária - altura máxima A: Inserção de 1, 2, 3, 4, 5, 6 e 7 Pior caso: O(n) 1 2 3 4 5 6 7.

Slides:



Advertisements
Apresentações semelhantes
Árvores CC/EC/Mestrado Teoria dos Grafos ‏ 1.
Advertisements

UFES CC/EC/Mestrado Teoria dos Grafos Árvores. UFES CC/EC/Mestrado Teoria dos Grafos Árvores Grafo Acíclico: não possui ciclos.
Estruturas de Dados Arvores
Pesquisas de Dados (Parte 2)
Árvores Equilibradas Sumário Splay B-tree Vermelho-Preto AA e BB
Prof. M.Sc. Fábio Francisco da Costa Fontes Abril
Indices estruturados por B-TREE
MC 202 – Estruturas de dados
Árvore Binária de Busca
Árvores.

Pesquisa em Memória Primária – Árvores AVL
Pesquisa em Memória Primária – Árvores de Busca
Pesquisa em Memória Primária – Árvores de Busca
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)
Árvores e Árvores Binárias
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
CAP-223 Árvore através de uma Árvore Binária A BCDE FGHIJK A BC D E FGHIJK.
Robson Godoi / Sandra Siebra
Indexação de Arquivos Página de rosto.
Árvores Equilibradas Sumário Splay B-tree Vermelho-Preto AA e BB
Fundamentos sobre Árvores
Árvore Binária de Busca
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
Estruturas de Dados com Jogos
Árvores Binárias de Pesquisa
Algorítmos e estrutura de dados III
Algorítmos e estrutura de dados III
Algorítmos e estrutura de dados III
Algoritmos e Estrutura de Dados III
Árvores Balanceadas Liliane Rose Benning Salgado.
Rotação Simples e Dupla Katia 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.
Árvore Binária de Busca
José Augusto Amgarten Quitzau
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Árvores Prof. Dr. rer. nat. Daniel Duarte Abdala DAS 5102 – Fundamentos da Estrutura da Informação 1.

Árvores Binárias Profa. Patrícia A. Jaques Luiz Gonzaga Jr
Estruturas de Dados Aula 15: Árvores
– Aula 20 Adaptado por Reinaldo Fortes para o curso de
Á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.
Prof. Hilton Cardoso Marins Junior ÁRVORES BINÁRIAS.
Á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.
Universidade do Vale do Rio dos Sinos - São Leopoldo -
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.
Universidade do Vale do Rio dos Sinos - São Leopoldo -
Á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.
Árvores Balanceadas (AVL)
Árvores (introdução) Anjolina Grisi de Oliveira Obs: vários slides foram cedidos por Adolfo Almeida Duran (UFBA)
Árvores e Árvores Binárias
Árvores Binárias e Árvores AVL Katia Guimarães. Árvores Binárias e Árvores AVL Katia S. Guimarães
BANCO DE DADOS II Árvore de Dados. FATEC - GUARATINGUETÁ Professor: Eduardo Barbosa Adiel Lemos Ana Renata Bruno Michael Jéssica Fernanda Layla Monique.
INE5408 Estruturas de Dados Árvores B - Estrutura e peculiaridades -Algoritmos de inserção, pesquisa e deleção.
Transcrição da apresentação:

Árvore Binária - altura máxima A: Inserção de 1, 2, 3, 4, 5, 6 e 7 Pior caso: O(n)

Árvore Binária - altura mínima Inserção de 4, 2, 6, 1, 3, 5 e 7, nesta ordem Pior caso: O(log n)

3 Árvore Binária de altura máxima F E D C B A Para árvores com n nós: altura máxima: cada nó não folha só possui um filho - ziguezague sua altura é n-1

4 Árvore Binária - altura mínima Seja T uma árvore binária de altura mínima Se T não é completa, retira-se uma folha w de seu último nível e coloca-se como filho de uma folha de nível superior (acima do penúltimo) Repete-se a operação até não ser possível mais realizá-la A árvore resultante T é completa Se a altura de T for menor que a de T esta não seria mínima. T não pode ser de altura maior nenhum nó foi retirado T e T possuem a mesma altura

5 Árvore Binária - altura mínima nível 0 – (somente a raiz) contém um nó nível 1 – contém no máximo 2 nós..... no nível L - pode conter no máximo 2 L nós árvore binária cheia de altura d tem exatamente 2 L nós em cada nível 0 L d

6 Árvore Binária O total de nós n em uma árvore binária cheia (que seria o máximo) de altura d é a soma do número de nós a cada nível d n = d = 2 j j=0 n = 2 d+1 -1 d = log (n+1) –1 pode-se mostrar também por indução! OBS.: número de folhas de uma árvore cheia com n nós 2 d = 2 log(n+1)-1 = 2 log(n+1) = n+1 2

7 Árvore Binária Cheia Árvore Binária Cheia de altura = 15 nós

8 Árvore Binária Cheia É a árvore binária com o máximo de nós para uma dada altura, mas a distância da raiz é pequena Lema: Lema: Seja T uma árvore binária completa com n>0 nós. Então, T possui altura h mínimo. Além disso, h = log n

9 Árvores AVL importante manter balanceadas árvores binária de busca Árvore Balanceada ou AVL: a altura de uma árvore binária é o maior nível de suas folhas A altura de uma árvore vazia é definida como -1

10 árvore AVL é uma árvore binária de busca onde: para cada vértice, a altura das duas sub-árvores não difere por mais de um: Árvores AVL - definição |altura (subdir (v)) - altura (subesq(v))| <= 1

11 toda árvore completa é AVL e toda AVL é completa? se a inequação acima acontece para um vértice v, v é dito regulado, senão, desregulado Árvores AVL - definição

12 Árvore AVL de altura h Qual o número mínimo de nós? Suponha altura(subesq(v)) = h-1 Como queremos analizar o número mínimo de nós altura(subd(v)) = h-2 árvore AVL construída recursivamente: Seja T h uma árvore AVL de altura h h = 0 T h tem 0 nós: | T h | = 0 h = 1| T h | = 1 h = 2| T h | = 1 + | T h-1 | + | T h-2 | subarv de altura h-2 v subarv de altura h-1

Qual o número mínimo de nós?

14 Qual o número mínimo de nós? Por observação: o h-ésimo elemento da sequência de Fibonacci é: F h = 0 se h = 0 F h = 1 se h = 1 F h = F h-1 + F h-2 se h > 1 análogo a |T h |, mas diferindo de 1: |T h | = F h + 1 pode-se provar que (exercício 5.3) F h = 1/ 5 [( (1+ 5) h /2) - ((1- 5) h /2 )] |T h | = F h + 1 termo 0

15 Qual o número mínimo de nós? |T h | > 1/ 5 [( (1+ 5) h /2) - ((1- 5) h /2 )] - 1 fazendo a = ( (1+ 5)/2) temos |T h | > 1/ 5 a h - 1 |T h |+ 1 > 1/ 5 a h log a (|T h | + 1) > log a (a h / 5) log a (|T h | + 1) > h log a 5 (mudando para base 2) log 2 (|T h | + 1)/ log 2 a > h 5 h = O (log n)

16 Árvores AVL balanço de um nó altura da sub-árvore da esquerda menos a altura da sub-árvore direita O balanço de cada nó em uma árvore binária AVL balanceada -1, 0 ou 1 Seja T uma árvore binária balanceada. Ao inserir um nó q em T a árvore resultante pode ou não ser balanceada toda vez que um nó qualquer de T se torna desregulado rebalancear, através de rotações cuidado: manter a ordenação entre as chaves

17 Árvores AVL

18 Árvores AVL

Árvores AVL – rotações A BC DEFG A B C D E FG

A BC DEFG A C B G F ED

Árvores AVL - exemplos

Árvores AVL – fator de balanceamento

Árvores AVL – fator de balanceamento

Árvores AVL – inserções

Árvores AVL – inserções - balanceada

Árvores AVL – inserções - desbalanceada

Árvores AVL – inserções - desbalanceada Apenas se o nó inserido for à esquerda de um nó com balanceamento =

Caso 1: Raiz com bal = 1, nó na SAE A 1 B 0 T3T3 T3T3 altura n T2T2 T2T2 T1T1 T1T1 ? ? É necessária uma rotação à direita para balancear a árvore...

Caso 1: Raiz com bal = 1, nó na SAE A B T3T3 T3T3 altura n T2T2 T2T2 T1T1 T1T1 ? ? A B T3T3 T3T3 T2T2 T2T2 T1T1 T1T1 ? ? Rotação à direita

Caso 2: Raiz com bal = 1, nó na SAD Rotação dupla: rotação à esquerda na sub-árvore enraizada em B. uma rotação à direita na sub-árvore enraizada em A. A 1 B 0 T3T3 T3T3 T2T2 T2T2 altura n -1 T1T1 T1T1 altura n ? ? C 0 altura n -1 T4T4 T4T4 altura n

Caso 2: Raiz com bal = 1, nó na SAD A 1 B 0 T3T3 T3T3 T2T2 T2T2 altura n -1 T1T1 T1T1 altura n ? ? C 0 altura n -1 T4T4 T4T4 altura n

Caso 2: Raiz com bal = 1, nó na SAD A B T3T3 T3T3 T2T2 T2T2 altura n -1 T1T1 T1T1 altura n ? ? C altura n -1 T4T4 T4T4 altura n

Caso 2: Raiz com bal = 1, nó na SAD A B T3T3 T3T3 T2T2 T2T2 altura n -1 T1T1 T1T1 altura n ? ? C altura n -1 T4T4 T4T4 altura n

Caso 2: Raiz com bal = 1, nó na SAD A B T3T3 T3T3 T2T2 T2T2 altura n -1 T1T1 T1T1 altura n ? ? C altura n -1 T4T4 T4T4 altura n 0 0