1 de outubro de 2015 1 Árvores de Busca e Árvores AVL Parte 1 Katia Guimarães.

Slides:



Advertisements
Apresentações semelhantes
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ESTRUTURAS DE DADOS AVANÇADAS Aula /08/2011 Professor Leomir J. Borba-
Advertisements

Estruturas de Dados Árvores Binárias
Estruturas de Dados Arvores
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
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.

Pesquisa em Memória Primária – Árvores de Busca
David Menotti Algoritmos e Estruturas de Dados I DECOM – UFOP
Pesquisa em Memória Primária – Árvores de Busca
SEMINÁRIO DE ALGORITMOS
André Lopes Pereira Luiz Carlos Barboza Júnior
Árvores Introdução e Aplicações Árvores de Busca Binária Fundamentos
Árvores AVL.
Árvores Balanceadas (AVL)
Árvores Binárias de Pesquisa (ABP)
Métodos de Classificação por Seleção: HeapSort
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
LISTAS DUPLAMENTE ENCADEADAS
Pesquisa em Memória Primária
Árvores binárias de pesquisa com balanceamento
Estruturas de Dados com Jogos
Árvores Binárias de Pesquisa
Algorítmos e estrutura de dados III Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
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
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.
Árvores Splay Estruturas de Dados
Árvore Binária de Busca
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática

– 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.
Á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.
Árvores AVL Algoritmos e Estruturas de Dados - IF672
Estruturas Avançadas de Dados UNISINOS
Estruturas de Dados e Algoritmos para Inferência de Motifs Katia Guimarães.
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.
Árvores de Busca Binária
Heaps Katia S. Guimarães
14 de outubro de Árvores B Katia Guimarães.
Árvores Balanceadas (AVL)
Árvores (introdução) Anjolina Grisi de Oliveira Obs: vários slides foram cedidos por Adolfo Almeida Duran (UFBA)
28 de outubro de Árvores Binárias e Árvores AVL Parte 2 Katia Guimarães.
Árvores Binárias e Árvores AVL Katia Guimarães. Árvores Binárias e Árvores AVL Katia S. Guimarães
Árvores Estrutura de dados que se caracteriza por uma relação de
Adriana Libório Fernandes Lins Arthur Cavalcanti Alem Átila Valgueiro Malta Moreira Flavio Juvenal da Silva Júnior Gustavo Cauê Silva Botelho Matheus Bispo.
26 de fevereiro de Árvores (2,3) e Árvores B Katia 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.
UNIVERSIDADE FEDERAL DE MINAS GERAIS Árvores Cristiano Arbex Valle Vinicius Fernandes dos Santos
Transcrição da apresentação:

1 de outubro de Árvores de Busca e Árvores AVL Parte 1 Katia Guimarães

Árvores binárias onde os elementos são organizados de forma que: 23/janeiro/ Árvore de Busca Binária Todos os elementos na sub-árvore esquerda de cada nó k têm valor menor ou igual ao valor no nó k. Todos os elementos na sub-árvore direita de cada nó k têm valor maior do que o valor no nó k.

Árvore binária onde os elementos são organizados de forma que: 23/janeiro/ Árvore de Busca Binária y < xz > x x

Exemplo: 50, 20, 39, 8, 79, 26, 58, 15, 88, 4, 85, 96, 71, 42, /janeiro/ Árvore de Busca Binária

Estrutura de dados dinâmica, com recuperação em tempo logarítmico. 23/janeiro/ Árvore de Busca Binária

Ocorre sempre em uma folha. 23/janeiro/ Inserção em Árvores de Busca Procedimento Inclui (raiz, x): Se raiz então se elemento na raiz > x então Inclui (esquerda, x) senão Inclui (direita, x) senão { aloque espaço para um nó; coloque x neste nó; retorne apontador novo nó}

Exemplo: 50, 20, 39, 8, 79, 26, 58, 15, 88, 4, 85, 96, 71, 42, /janeiro/ Árvore de Busca Binária

Nem sempre ocorre em uma folha.  23/janeiro/ Remoção em Árvore de Busca Procedimento Remove (raiz, x) EndNó  Busca ( x ); Se ¬ EndNó então relate insucesso

Exemplo: Remove (raiz, 60) 23/janeiro/ Remoção em Árvore de Busca raiz

Nem sempre ocorre em uma folha.  23/janeiro/ Remoção em Árvores de Busca Procedimento Remove (raiz, x) EndNó  Busca ( x ); Se ¬ EndNó então relate insucesso senão se EndNó é folha (¬ esq AND ¬ dir ) então apague apontador pai;

Exemplo: Remove (raiz, 53) 23/janeiro/ Remoção em Árvore de Busca raiz

Exemplo: Remove (raiz, 53) 23/janeiro/ Remoção em Árvore de Busca raiz

23/janeiro/ Remoção em Árvores de Busca Procedimento Remove (raiz, x) EndNó  Busca ( x ); Se ¬ EndNó então relate insucesso senão se EndNó é folha (¬ esq AND ¬ dir ) então apague apontador pai; senão se ¬ esq OR ¬ dir então faça pai de x apontar para filho x

Exemplo: Remove (raiz, 58) 23/janeiro/ Remoção em Árvore de Busca raiz

Exemplo: Remove (raiz, 58) 23/janeiro/ Remoção em Árvore de Busca raiz

23/janeiro/ Remoção em Árvores de Busca Procedimento Remove (raiz, x) EndNó  Busca ( x ); Se ¬ EndNó então relate insucesso senão se EndNó é folha (¬ esq AND ¬ dir ) então apague apontador pai; senão se ¬ esq OR ¬ dir então faça pai de x apontar para filho x senão substitua x pelo seu sucessor

Exemplo: Remove (raiz, 20) 23/janeiro/ Remoção em Árvore de Busca raiz Onde está o sucessor de 20?

Onde está o sucessor de um elemento cujo nó tem filho à direita? 23/janeiro/ Remoção em Árvore de Busca raiz Um passo à direita. Tantos passos à esquerda quantos sejam necessários. Note que o nó deste elemento não tem filho à esquerda.

Exemplo: Remove (raiz, 20) 23/janeiro/ Remoção em Árvore de Busca raiz O pai do sucessor apontará para o seu filho à direita do sucessor.

Exemplo: 50, 20, 39, 42, /janeiro/ Possível Problema 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.

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

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

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

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

Inserção à direita de árvore desbalanceada à direita (bal = +1) 23/janeiro/ Rotação Simples à Esquerda Nó crítico (+1)

Inserção à direita de árvore desbalanceada à esquerda (bal = -1) 23/janeiro/ Rotação Dupla Promover o elemento que desbalanceia tanto à esquerda quanto à direita

Inserção à direita de árvore desbalanceada à direita (bal = +1) 23/janeiro/ Rotação Dupla Nó crítico (+1)