Estruturas de Dados. Árvores AVL: Partes I e II. Desempenho de ABBs (Revisão)

Tamanho: px
Começar a partir da página:

Download "Estruturas de Dados. Árvores AVL: Partes I e II. Desempenho de ABBs (Revisão)"

Transcrição

1 Estruturas de Dados Árvores AVL: Partes I e II Prof. Ricardo J. G. B. Campello Parte deste material é baseado em adaptações e extensões de slides disponíveis em (Goodrich & Tamassia). Desempenho de ABBs (Revisão) Mapa / Dicionário com n itens implementado com árvore de busca binária de altura h o espaço usado é O(n) implementação encadeada métodos search, insert e remove têm tempo O(h) A altura h é O(n) no pior caso: chaves inseridas em ordem crescente ou decrescente A altura h é O(log n): no melhor caso árvore completa na média inserção aleatória de itens

2 Desempenho de ABBs (Revisão) Mesmo no caso médio, é possível mostrar que, embora a altura esperada da árvore seja O(log n), existe um fator constante de aproximadamente,. Em outras palavras, mesmo no caso médio o desempenho é ainda aproximadamente 0% pior do que aquele em uma árvore completa/cheia. Em resumo: Inserção e remoção em ABBs não garantem balanceamento No pior caso, operações são O(n) No caso médio, operações são aproximadamente O(, log n) Questão: Não seria possível reorganizar uma ABB após cada inserção ou remoção de forma a mantê-la sempre completa? 3 Restabelecimento de ABBs Completas Restabelecer a completude após uma operação de modificação exige percorrer todos os nós da ABB. Logo, complexidade é, no mínimo, proporcional a n: ou seja, é Ω(n) veja exemplo ao lado Árvores AVL constituem uma alternativa muito mais eficiente para manter o balanceamento. após inserção (chave 0) e restabelecimento

3 Árvores AVL Uma árvore AVL é uma árvore binária de busca específica. Particularmente, é tal que cada nó interno v é balanceado (ou regulado) no sentido que: alturas dos filhos de v podem diferir em no máximo. 8 6 Isso implica que árvores AVL são ABBs balanceadas: AB tal que qualquer de suas sub-árvores com n nós possui altura O(log n). Exemplo de Árvore AVL: alturas mostradas ao lado dos nós e chaves no interior. 5 Busca em AVLs Exatamente igual a qualquer ABB: < 6 > = 8 9 Algoritmo search(t, k, v) se isexternal(t, v) então retorne v // chave não existe senão x elem(t, v) se k < x.key então retorne search(t, k, leftchild(t, v)) senão se k > x.key então retorne search(t, k, rightchild(t, v)) senão // k = x.key retorne v // chave encontrada! Como a árvore é balanceada, executa em tempo O(log n) no pior caso! 6 3

4 Inserção em Árvores AVL Inicialmente é como em qualquer ABB. Exemplo (inserindo item com chave 5): antes da inserção após a inserção 7 Desbalanceamento Após inserção, nós ancestrais daquele inserido (e portanto a árvore como um todo) podem se tornar desbalanceados única situação possível para um nó z ficar desbalanceado: uma das sub-árvores filhas ter altura em uma unidade maior que a outra inserção feita nessa sub-árvore de maior altura inserção ter sido tal que causou o aumento da altura dessa sub-árvore z h+ z h+ h h h h+ antes da inserção após inserção

5 Desbalanceamento Para detectar o desbalanceamento, basta verificar as alturas dos filhos de cada nó ancestral após a inserção. Controle das Alturas: É eficiente mantê-las armazenadas! Nos próprios nós (nodos) da árvore! insert(t, x); x.key = 5 5 Basta então atualizar, acima na árvore (até a raiz se necessário), as alturas dos nós ancestrais ao inserido. Para saber se a altura de um nó deve ser atualizada, basta olhar a dos dois filhos. Roda em tempo O(log n) no pior caso Detecção de Desbalanceamento Algoritmo para ajuste de alturas e detecção do o nó desbalanceado:. Faça a altura do novo nó inserido ser igual a. Suba acima na árvore verificando se é preciso ajustar a altura de cada ancestral 3. Pare ao encontrar o primeiro ancestral que não demanda ajuste de altura, ou quando encontrar a raiz, ou quando o ajuste de altura em um ancestral causar desbalanceamento no pai deste. Se um desbalanceamento for detectado, interrompa a rotina de ajuste de alturas e retorne o nó desbalanceado (z) OBS: Interrompe após a detecção do o nó desbalanceado. O re-balanceamento restabelecerá a altura da sub-árvore! insert(t, x); x.key = 5 7 z

6 Algoritmo de Inserção. Execute a rotina de inserção em uma ABB. Execute a rotina de ajuste de alturas e detecção de nó desbalanceado vista anteriormente 3. Pare se nenhum nó desbalanceado foi detectado. Caso contrário, execute o re-balanceamento da sub-árvore com raiz no nó detectado insert(t, x); x.key = 5 7 z Re-Balanceamento Sejam: w o nó inserido z o o ancestral desbalanceado de w y o ancestral de w diretamente responsável por desbalancear z filho de z com maior altura x o filho de y ancestral de w não necessariamente o pai de w filho de y com maior altura Nota: x e y são sempre os filhos com maior altura, sem empates caso contrário não teriam causado o desbalanceamento de z 7 78 y w Desbalanceamento implica que a sub-árvore com raiz em z teve sua altura original aumentada após a inserção z x 6

7 Re-Balanceamento Reestruturação: Re-balanceamento por operações de rotação. Sejam a, b, c os nós na ordem de um caminhamento inter-fixado por x, y, z.,,, são as sub-árvores que não incluem esses nós, na ordem. São possíveis sub-árvores (caminhamento, a,, b,, c, ): c = x c = y a = x a = y T 3 Re-Balanceamento A reestruturação sempre torna b a raiz com filhos a e c, e faz os filhos de a e c serem,, e, mantendo o caminhamento, a,, b,, c, e portanto a relação de ordem da árvore! c = x rotação simples c = x T a = x rotação simples a = x 7

8 Re-Balanceamento A reestruturação restabelece a altura original da sub-árvore com raiz em z, quando aumentada em devido à inserção de w (desbalanceamento), mantendo assim o balanceamento de todos os demais nós da árvore. c = y rotação dupla c = y a = y rotação dupla a = y T3 5 Exemplo 5 z y x desbalanceada... 3 x 7 6 y z balanceada

9 o. Caso de Rotação Simples. Se z é filho direito (esquerdo), então faça y ser o novo filho direito (esquerdo) do pai de z. Senão, se z é raiz, faça y ser a nova raiz. Faça o filho esquerdo de y ser o filho direito de z c = x 3. Faça z ser o filho esquerdo de y. Atualize as alturas de z, x, e y em função das alturas de,, e, que não mudam! T c = x o. Caso de Rotação Simples. Se z é filho direito (esquerdo), então faça y ser o novo filho direito (esquerdo) do pai de z. Senão, se z é raiz, faça y ser a nova raiz. Faça o filho direito de y ser o filho esquerdo de z a = x 3. Faça z ser o filho direito de y. Atualize as alturas de z, x, e y em função das alturas de,, e, que não mudam! a = x 9

10 o. Caso de Rotação Dupla. Se z é filho direito (esquerdo), então faça x ser o novo filho direito (esquerdo) do pai de z. Senão, se z é raiz, faça x ser a nova raiz. Faça o filho direito de x ser o filho esquerdo de y c = y 3. Faça y ser o filho direito de x. Faça o filho esquerdo de x ser o filho direito de z 5. Faça z ser o filho esquerdo de x 6. Atualize as alturas de z, y e x em função das alturas de,, e, que não mudam! c = y o. Caso de Rotação Dupla. Se z é filho direito (esquerdo), então faça x ser o novo filho direito (esquerdo) do pai de z. Senão, se z é raiz, faça x ser a nova raiz. Faça o filho esquerdo de x ser o filho direito de y a = y 3. Faça y ser o filho esquerdo de x. Faça o filho direito de x ser o filho esquerdo de z 5. Faça z ser o filho direito de x 6. Atualize as alturas de z, y e x em função das alturas de,, e, que não mudam! a = y 0

11 Complexidade Operação de busca (search) é O(log n): altura da árvore é O(log n) nenhuma reestruturação é necessária Operação de inserção (insert) é O(log n): busca inicial é O(log n) atualização das alturas acima na árvore é O(log n) reestruturação é O() modifica-se a relação pai-filho de um número constante de nós, através de um número constante de operações, se árvore for implementada via estrutura encadeada Exercícios. Dê um exemplo de uma AB e dois exemplos de inserção de itens nessa mesma árvore para os quais em um dos casos a inserção causa desbalanceamento e no outro caso não causa. Em ambos os casos indique as alturas de cada nó da árvore antes e depois da inserção do item. Para o caso em que ocorre o desbalanceamento: Indique quem são os nós x, y e z segundo a notação adotada. Indique qual tipo de rotação é necessária para re-balancear a AVL. Mostre quem são os nós a, b, c e as sub-árvores,, e segundo a notação adotada Apresente a árvore após a operação de rotação indicada, incluindo as alturas de cada nó.

12 Exercícios. Apresente exemplos de árvores AVL (com pelo menos 0 nós internos) desbalanceadas após uma inserção e mostre em detalhes o processo de reestruturação: Para cada exemplo, indique qual rotação é necessária e quais são os nós x, y, z, a, b, c e as sub-árvores,, e segundo a notação adotada. Apresente ao menos um exemplo para cada tipo de rotação! 3 Bibliografia M. T. Goodrich & R. Tamassia, Estruturas de Dados e Algoritmos em Java, Bookman, 00 M. T. Goodrich & R. Tamassia, Data Structures and Algorithms in C++/Java, John Wiley & Sons, 00/005 Szwarcfiter & Markenzon, Estruturas de Dados e seus Algoritmos, LTC, 99

Estruturas de Dados. Aula 08. Árvores AVL II. Karina Mochetti

Estruturas de Dados. Aula 08. Árvores AVL II. Karina Mochetti Estruturas de Dados 2018.2 Árvore AVL Uma Árvore AVL (Adelson, Velskii e Landis) T é uma Árvore Binária de Busca Balanceada, tal que: T é vazia; T consiste de um nó raiz k e duas subárvores binárias Te

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca Árvores AVL Árvores Binárias de Busca Altura de uma árvore binária (AB): igual à profundidade, ou nível máximo, de suas folhas A eficiência da busca em árvore depende do seu balanceamento Algoritmos de

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca Árvores AVL Árvores Binárias de Busca Altura de uma árvore binária (AB): igual à profundidade, ou nível máximo, de suas folhas A eficiência da busca em árvore depende do seu balanceamento Algoritmos de

Leia mais

Introdução a AVL: teoria e prática. 22/11, 25/11 e 30/11

Introdução a AVL: teoria e prática. 22/11, 25/11 e 30/11 Introdução a AVL: teoria e prática 22/11, 25/11 e 30/11 Árvores binárias de busca (ABB) Árvores de grau 2, isto é, cada nó tem dois filhos, no máximo Raiz B A C Terminologia: filho esquerdo filho direito

Leia mais

Algoritmos e Estruturas de Dados II Árvores - AVL. Prof. César Melo DCC/ICE/UFAM

Algoritmos e Estruturas de Dados II Árvores - AVL. Prof. César Melo DCC/ICE/UFAM Algoritmos e Estruturas de Dados II Árvores - AVL Prof. César Melo DCC/ICE/UFAM Até mais ABB, muito prazer AVL. Escreva sobre a estrutura de dados Árvore Binária de Busca(ABB). Você terá 10 minutos para

Leia mais

ESTRUTURA DE DADOS CIÊNCIA E TECNOLOGIA DO RIO. Curso de Tecnologia em Sistemas para Internet

ESTRUTURA DE DADOS CIÊNCIA E TECNOLOGIA DO RIO. Curso de Tecnologia em Sistemas para Internet INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE ESTRUTURA DE DADOS Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br Curso de Tecnologia

Leia mais

Árvores binárias de busca

Árvores binárias de busca Árvores binárias de busca SCC-214 Projeto de Algoritmos Thiago A. S. Pardo Árvore binárias Árvores de grau 2, isto é, cada nó tem dois filhos, no máximo Raiz D B A E C F Terminologia: filho esquerdo filho

Leia mais

Algoritmos e Estrutura de Dados II. Árvore AVL. Prof Márcio Bueno. / Material da Prof a Ana Eliza

Algoritmos e Estrutura de Dados II. Árvore AVL. Prof Márcio Bueno. / Material da Prof a Ana Eliza Algoritmos e Estrutura de Dados II Árvore AVL Prof Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Material da Prof a Ana Eliza Árvores Binárias de Busca Objetivo da Utilização Minimizar

Leia mais

Estruturas de Dados. Filas em que a prioridade de remoção não é cronológica. Maior prioridade não é do elemento que ingressou primeiro

Estruturas de Dados. Filas em que a prioridade de remoção não é cronológica. Maior prioridade não é do elemento que ingressou primeiro Estruturas de Dados Filas de Prioridade Ricardo J. G. B. Campello Parte deste material é baseado em adaptações e extensões de slides disponíveis em http://ww3.datastructures.net (Goodrich & Tamassia).

Leia mais

Árvores Rubro-Negra IFRN

Árvores Rubro-Negra IFRN Árvores Rubro-Negra IFRN Árvores Rubro-Negra Seja T uma árvore binária de pesquisa Cada nó deve estar associado a uma cor rubro ou negra Uma árvore é rubro-negra quando as seguintes condições são satisfeitas:

Leia mais

Árvores binárias de busca

Árvores binárias de busca Árvores binárias de busca Introdução à Ciência de Computação II Diego R. Amancio Baseado no material do Prof. Thiago A. S. Pardo Árvore binárias n Árvores de grau 2, isto é, cada nó tem dois filhos, no

Leia mais

Algoritmos e Estrutura de Dados II. Árvore AVL. Prof a Karina Oliveira. Fonte: Prof a Ana Eliza

Algoritmos e Estrutura de Dados II. Árvore AVL. Prof a Karina Oliveira. Fonte: Prof a Ana Eliza Algoritmos e Estrutura de Dados II Árvore AVL Prof a Karina Oliveira kkco@dei.unicap.br Fonte: Prof a Ana Eliza Árvores Binárias de Busca Objetivo da Utilização Minimizar o número de comparações efetuadas,

Leia mais

Árvores AVL. Prof. Robinson Alves

Árvores AVL. Prof. Robinson Alves Prof. Robinson Alves O que veremos? Conceitos Inserção Remoção Balanceamento Código Java de AVL Árvores Balanceadas As árvores binárias de pesquisa são, em alguns casos, pouco recomendáveis para as operações

Leia mais

Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação. Árvores Balanceadas

Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação. Árvores Balanceadas Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação Árvores Balanceadas Nelson Cruz Sampaio Neto nelsonneto@ufpa.br 25 de abril de 2016 Introdução A árvore de busca

Leia mais

Aula 10 Árvores Adelson-Velskii e Landis

Aula 10 Árvores Adelson-Velskii e Landis MC3305 Algoritmos e Estruturas de Dados II Aula 10 Árvores Adelson-Velskii e Landis Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 2Q-2014 1 Árvores balanceadas 2 Árvores balanceadas As ABB permitem

Leia mais

Estruturas de Dados. Parte dos slides a seguir são adaptações, extensões e recodificações em C dos originais:

Estruturas de Dados. Parte dos slides a seguir são adaptações, extensões e recodificações em C dos originais: Estruturas de Dados Listas Dinâmicas Simplesmente Encadeadas Prof. Ricardo J. G. B. Campello Créditos Parte dos slides a seguir são adaptações, extensões e recodificações em C dos originais: disponíveis

Leia mais

Algoritmos e Estruturas de Dados I. Aula 11 Árvores AVL. Prof. Jesús P. Mena-Chalco.

Algoritmos e Estruturas de Dados I. Aula 11 Árvores AVL. Prof. Jesús P. Mena-Chalco. Algoritmos e Estruturas de Dados I Aula 11 Árvores AVL Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 1Q-2019 1 Sobre a altura de uma ABB 2 Altura de uma ABB 4 2 1 6 3 5 7 Uma árvore de 7 elementos

Leia mais

Linguagem C: Árvores AVL

Linguagem C: Árvores AVL Instituto de C Linguagem C: Árvores AVL Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Árvores Balanceadas As árvores binárias de pesquisa são,

Leia mais

Árvores AVL (Adelson-Velskii and Landis)

Árvores AVL (Adelson-Velskii and Landis) Árvores VL (delson-velskii and Landis) Universidade Federal do mazonas Departamento de Eletrônica e Computação Introdução (1) Árvore alanceada Uma árvore binária balanceada é aquela em que, para qualquer

Leia mais

Dicionários. TAD Orientado a conteúdo

Dicionários. TAD Orientado a conteúdo Dicionários TAD Orientado a conteúdo Dicionários efinição: Tipo abstrato de dados orientado a onteúdo. Contrasta com as PILHAs e FILAs que são orientadas a posição. perações implementadas: Inserir(d,x)

Leia mais

ESTRUTURA DE DADOS E ALGORITMOS ÁRVORES BALANCEADAS. Cristina Boeres

ESTRUTURA DE DADOS E ALGORITMOS ÁRVORES BALANCEADAS. Cristina Boeres ESTRUTURA DE DADOS E ALGORITMOS ÁRVORES BALANCEADAS Cristina Boeres Árvore Binária - altura máxima Seja a árvore A formada com as seguintes inserções! 1, 2, 3, 4, 5, 6 e 7 1 2 3 4! Pior caso: O(n) 5 6

Leia mais

UNILASALLE Curso de Bacharelado em Ciência da Computação. Estrutura de Dados II Prof. Magalí T. Longhi. Árvores AVL*

UNILASALLE Curso de Bacharelado em Ciência da Computação. Estrutura de Dados II Prof. Magalí T. Longhi. Árvores AVL* UNILASALLE Curso de Bacharelado em Ciência da Computação Estrutura de Dados II Prof. Magalí T. Longhi Árvores AVL* * Material preparado para a disciplina de Estrutura de Dados II do Curso de Bacharelado

Leia mais

Algoritmos e Estrutura de Dados. Aula 17 Estrutura de Dados: Árvores AVL Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Aula 17 Estrutura de Dados: Árvores AVL Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 17 Estrutura de Dados: Árvores AVL Prof. Tiago A. E. Ferreira Introdução O nome AVL vem de seus criadores Adelson Velskye Landis, cuja primeira referência encontra-se

Leia mais

Introdução a árvores AVL. Prof. Ernesto Lindstaedt

Introdução a árvores AVL. Prof. Ernesto Lindstaedt Introdução a árvores AVL Prof. Ernesto Lindstaedt Definição O nome AVL vem dos seus criadores Adelson Velsky e Landis (1962); Uma ABP T é denominada AVL se: Para todos nós de T,, as alturas de suas duas

Leia mais

Universidade Federal de Mato Grosso Estrutura de Dados II

Universidade Federal de Mato Grosso Estrutura de Dados II Universidade Federal de Mato Grosso Estrutura de Dados II Curso de Ciência da Computação Prof. Thiago P. da Silva thiagosilva@ufmt.br Agenda Definições Fator de Balanceamento Estrutura de um Nó Operações

Leia mais

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó

Leia mais

Árvores AVL e Árvores B. Jeane Melo

Árvores AVL e Árvores B. Jeane Melo Árvores AVL e Árvores B Jeane Melo Roteiro Árvores Binárias Árvores AVL Definição Motivação Balanceamento Operações de rebalanceamento Árvores B Introdução Árvores Binárias Árvores binárias Cada nó tem

Leia mais

Árvore Vermelho-Preta. Estrutura de Dados II Jairo Francisco de Souza

Árvore Vermelho-Preta. Estrutura de Dados II Jairo Francisco de Souza Árvore Vermelho-Preta Estrutura de Dados II Jairo Francisco de Souza Introdução As árvores Vermelho-preto são árvores binárias de busca Também conhecidas como Rubro-negras ou Red-Black Trees Foram inventadas

Leia mais

Árvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo

Árvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo PMR2300 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó (exceto a

Leia mais

Aula 13 Árvores Adelson-Velskii e Landis

Aula 13 Árvores Adelson-Velskii e Landis Algoritmos e Estruturas de Dados I Aula 13 Árvores Adelson-Velskii e Landis Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br Q1-2019 1 AVL G.M. Adelson-Velskii y E.M. Landis An algorithm for the organization

Leia mais

A Invenção da B-Tree. Árvores B Parte I. Problema. Problema. Árvores Binárias de Busca. Árvores Binárias de Busca. Introdução

A Invenção da B-Tree. Árvores B Parte I. Problema. Problema. Árvores Binárias de Busca. Árvores Binárias de Busca. Introdução Algoritmos e Estruturas de Dados II Árvores B Parte I Introdução Adaptado dos Originais de: Profa. Debora Medeiros Ricardo J. G. B. Campello Leandro C. Cintra Maria Cristina F. de Oliveira A Invenção da

Leia mais

ÁRVORE AVL. Problema do balanceamento

ÁRVORE AVL. Problema do balanceamento ÁRVORE VL Prof. ndré ackes Problema do balanceamento 2 eficiência da busca em uma árvore binária depende do seu balanceamento. O(log N), se a árvore está balanceada O(N), se a árvore não está balanceada

Leia mais

Árvores. Prof. César Melo ICOMP/UFAM

Árvores. Prof. César Melo ICOMP/UFAM Árvores Prof. César Melo ICOMP/UFAM Introdução v Árvore é uma estrutura adequada para representar hierarquias Diretórios em um computador Serviço de resolução de nomes na Internet v A forma mais natural

Leia mais

A Invenção da B-Tree. Árvores B Parte I. Problema. Problema. Introdução. Leandro C. Cintra Maria Cristina F. de Oliveira. Solução?

A Invenção da B-Tree. Árvores B Parte I. Problema. Problema. Introdução. Leandro C. Cintra Maria Cristina F. de Oliveira. Solução? Algoritmos e Estruturas de Dados II Prof. Ricardo J. G. B. Campello Árvores B Parte I Introdução Adaptado e Estendido dos Originais de: Leandro C. Cintra Maria Cristina F. de Oliveira A Invenção da B-Tree

Leia mais

Árvores Binárias de Busca (ABB) 18/11

Árvores Binárias de Busca (ABB) 18/11 Árvores Binárias de Busca (ABB) 18/11 Definição Uma Árvore Binária de Busca possui as mesmas propriedades de uma AB, acrescida da seguintes propriedade: Para todo nó da árvore, se seu valor é X, então:

Leia mais

Árvores Vermelho-Preto

Árvores Vermelho-Preto Árvores Vermelho-Preto SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC)

Leia mais

Uma árvore binária de busca não garante acesso em tempo logarítmico.

Uma árvore binária de busca não garante acesso em tempo logarítmico. ÁRVORES LNEDS Uma árvore binária de busca não garante acesso em tempo logarítmico. Inserções ou eliminações podem desbalanceá-la. Pior caso: a árvore degenera em lista ligada, onde a busca passa a gastar

Leia mais

ÁRVORES BALANCEADAS (AVL)

ÁRVORES BALANCEADAS (AVL) ÁRORES BALANCEADAS (AL) PALO JOSÉ DA SILA E SILA 1. Árvores balanceadas Como já vimos anteriormente, o uso de árvores binárias de busca sem a preocupação com seu balanceamento pode levar a um aumento de

Leia mais

Árvores Vermelho-Preto

Árvores Vermelho-Preto SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade de São

Leia mais

Aula 19 Árvores Rubro-Negras

Aula 19 Árvores Rubro-Negras Algoritmos e Estruturas de Dados I Aula 19 Árvores Rubro-Negras Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br Q1-2017 1 Árvores de Busca Binária Por que ABBs? São estruturas eficientes de busca (se

Leia mais

Listas de Prioridade. Fonte de consulta: Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC.

Listas de Prioridade. Fonte de consulta: Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Listas de Prioridade Fonte de consulta: Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Capítulo 6 Prioridade } Algumas aplicações precisam recuperar rapidamente um dado

Leia mais

CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches

CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches CES-11 lgoritmos e Estruturas de Dados Carlos lberto lonso Sanches Juliana de Melo Bezerra Balanceamento de árvores Árvores balanceadas Árvores VL Inserção em árvores VL Eliminação em árvores VL ltura

Leia mais

Árvores AVL (Balanceadas) Profª.Drª. Roseli Ap. Francelin Romero Fonte: Profa. Patrícia Marchetti Revisão: Gedson Faria

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

Leia mais

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó

Leia mais

Árvores Rubro-Negras. Árvores Rubro-Negras. (Vermelho-Preta) Estrutura da Árvore. Estrutura da Árvore

Árvores Rubro-Negras. Árvores Rubro-Negras. (Vermelho-Preta) Estrutura da Árvore. Estrutura da Árvore Árvores Rubro-Negras Árvores Rubro-Negras (Vermelho-Preta) Árvore Binária de Pesquisa (ABP) com nodos coloridos de vermelho e preto Árvore balanceada Qualquer caminho da raiz até as folhas, nenhum caminho

Leia mais

Aula 13 Árvores Rubro-Negras

Aula 13 Árvores Rubro-Negras MC3305 Algoritmos e Estruturas de Dados II Aula 13 Árvores Rubro-Negras Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 2Q-2015 1 Árvores de Busca Binária Por que ABBs? São estruturas eficientes de

Leia mais

Estrutura de Dados. Carlos Eduardo Batista. Centro de Informática - UFPB

Estrutura de Dados. Carlos Eduardo Batista. Centro de Informática - UFPB Estrutura de Dados Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Árvores (parte 4) Estruturas de Dados 2 Organização dos dados: Linear: Listas, pilhas, filas. Relação sequencial.

Leia mais

Filas de Prioridades Letícia Rodrigues Bueno

Filas de Prioridades Letícia Rodrigues Bueno Filas de Prioridades Letícia Rodrigues Bueno UFABC Heaps Heaps: lista linear com chaves s 1,..., s n com propriedade s i s i/2, para 1 < i < n; Heaps Heaps: lista linear com chaves s 1,..., s n com propriedade

Leia mais

Árvores Binárias de Busca (ABB) 18/11

Árvores Binárias de Busca (ABB) 18/11 Árvores Binárias de Busca (ABB) 18/11 Definição Uma Árvore Binária de Busca possui as mesmas propriedades de uma AB, acrescida da seguintes propriedade: Para todo nó da árvore, se seu valor é X, então:

Leia mais

Árvores Binárias e AVL Felipe Barros Pontes Gustavo Márcio de Morais Cunha Márcio de Medeiros Ribeiro

Árvores Binárias e AVL Felipe Barros Pontes Gustavo Márcio de Morais Cunha Márcio de Medeiros Ribeiro Universidade Federal de Alagoas - UFAL Departamento de Tecnologia da Informação - TCI Ciência da Computação Árvores Binárias e AVL Felipe Barros Pontes Gustavo Márcio de Morais Cunha Márcio de Medeiros

Leia mais

Árvores. Estruturas de Dados. Prof. Vilson Heck Junior

Árvores. Estruturas de Dados. Prof. Vilson Heck Junior Árvores Estruturas de Dados Prof. Vilson Heck Junior Árvores INTRODUÇÃO Introdução Árvores são estruturas de dados utilizadas para armazenar e recuperar dados de forma rápida e eficiente; Árvores não são

Leia mais

AED2 - Aulas 06 e 07 Árvores AVL e rubro-negras

AED2 - Aulas 06 e 07 Árvores AVL e rubro-negras AED2 - Aulas 06 e 07 Árvores AVL e rubro-negras Árvores AVL AVL vem dos nomes dos seus inventores: Adelson-Velsky and Landis. Definições: a altura de uma subárvore é o comprimento do caminho mais longo

Leia mais

Árvores Estrutura de Dados. Universidade Federal de Juiz de Fora Departamento de Ciência da Computação

Árvores Estrutura de Dados. Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 1 Árvores Estrutura de Dados Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 2 Árvore Binária de Busca Definição: uma árvore binária de busca (ABB) é uma árvore binária na qual

Leia mais

ÁRVORES. Prof. Yan ndre Maldonado - 1. Prof. Yandre Maldonado e Gomes da Costa

ÁRVORES. Prof. Yan ndre Maldonado - 1. Prof. Yandre Maldonado e Gomes da Costa ÁRVORES Prof. Yan ndre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Árvores Prof. Yan ndre Maldonado - 2 Árvores são estruturas de dados que caracterizam uma relação entre os dados que a compõem;

Leia mais

PLANO DE DISCIPLINA DISCIPLINA: Algoritmos e Programação

PLANO DE DISCIPLINA DISCIPLINA: Algoritmos e Programação UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE COMPUTAÇÃO BACHARELADO EM GESTÃO DA INFORMAÇÃO PLANO DE DISCIPLINA DISCIPLINA: Algoritmos e Programação ( X ) SEMESTRAL - ( ) ANUAL CÓDIGO: GGI026 PERÍODO:

Leia mais

Estruturas de Dados. Grafos VIII: Árvores Geradoras Mínimas. Prof. Ricardo J. G. B. Campello

Estruturas de Dados. Grafos VIII: Árvores Geradoras Mínimas. Prof. Ricardo J. G. B. Campello Estruturas de Dados Grafos VIII: Árvores Geradoras Mínimas Prof. Ricardo J. G. B. Campello Parte deste material é baseado em adaptações e extensões de slides disponíveis em http://ww.datastructures.net

Leia mais

Árvores AVL. Estrutura de Dados II Jairo Francisco de Souza

Árvores AVL. Estrutura de Dados II Jairo Francisco de Souza Árvores AVL Estrutura de Dados II Jairo Francisco de Souza Introdução As árvores binárias de pesquisa são projetadas para um acesso rápido à informação. Idealmente a árvore deve ser razoavelmente equilibrada

Leia mais

ESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES

ESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES ESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES 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

Leia mais

INF1010 Lista de Exercícios 2

INF1010 Lista de Exercícios 2 INF00 Lista de Exercícios 2 Árvores. Construir algoritmo para dada uma árvore n-ária, transformá-la em uma árvore binária. 2. Qual a maior e menor quantidade de nós que podem existir em uma árvore binária

Leia mais

ALGORITMOS AVANÇADOS. UNIDADE V Estruturas de dados dos tipos Árvore Binária e Árvore AVL. Luiz Leão

ALGORITMOS AVANÇADOS. UNIDADE V Estruturas de dados dos tipos Árvore Binária e Árvore AVL. Luiz Leão UNIDADE V Estruturas de dados dos tipos Árvore Binária e Árvore AVL Luiz Leão luizleao@gmail.com http://www.luizleao.com Conteúdo Programático 5.1 - Árvores, Árvores Binárias e Árvores Binárias de Busca

Leia mais

Algoritmo: Split. Árvores B Parte IV. Algoritmo: Split. Algoritmo: Split. Algoritmo: Split. Procedimento inicial. Parâmetros

Algoritmo: Split. Árvores B Parte IV. Algoritmo: Split. Algoritmo: Split. Algoritmo: Split. Procedimento inicial. Parâmetros Algoritmos e Estruturas de Dados II Prof. Debora Medeiros Árvores B Parte IV Algoritmos de Split e Procedimento inicial Eliminação, Redistribuição & Concatenação Adaptado dos Originais de: Ricardo J. G.

Leia mais

Estruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1

Estruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Estruturas de Dados Módulo 17 - Busca 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)

Leia mais

INF 1010 Estruturas de Dados Avançadas. Árvores binárias

INF 1010 Estruturas de Dados Avançadas. Árvores binárias INF 1010 Estruturas de Dados Avançadas Árvores binárias 1 Árvore estrutura hierárquica: A B E F C D G A B C E F D G A B C D E F G (A (B (E, F)), C, (D (G))) 05/09/16 2 Árvore - definições árvore: nó raiz

Leia mais

Árvores de Pesquisa. A árvore de pesquisa é uma estrutura de dados muito eficiente para armazenar informação.

Árvores de Pesquisa. A árvore de pesquisa é uma estrutura de dados muito eficiente para armazenar informação. Árvores de Pesquisa A árvore de pesquisa é uma estrutura de dados muito eficiente para armazenar informação. Particularmente adequada quando existe necessidade de considerar todos ou alguma combinação

Leia mais

Árvores de Pesquisa (Parte II)

Árvores de Pesquisa (Parte II) 2013-02 Aula 21 Adaptado por Reinaldo Fortes para o curso de 2013-02 Arquivo original: 22._arvores_(parte_2) Árvores de Pesquisa (Parte II) Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 24

Leia mais

ESTRUTURA DE DADOS E ALGORITMOS. Árvores Binárias de Busca. Cristina Boeres

ESTRUTURA DE DADOS E ALGORITMOS. Árvores Binárias de Busca. Cristina Boeres ESTRUTURA DE DADOS E ALGORITMOS Árvores Binárias de Busca Cristina Boeres Árvore Binária de Busca 30! construída de tal forma que, para cada nó: nós com chaves menores estão na sub-árvore esquerda nós

Leia mais

Árvore binária - definição

Árvore binária - definição Árvore binária - definição árvore binária: conjunto finito de nós Æ (árvore vazia) {raiz, sub-árvore esquerda, sub-árvore direita}, onde sae e sad são conjuntos disjuntos Æ ou raiz /* nó da árvore binária

Leia mais

Breve Introdução à Complexidade Assintótica de Algoritmos Letícia Rodrigues Bueno

Breve Introdução à Complexidade Assintótica de Algoritmos Letícia Rodrigues Bueno Breve Introdução à Complexidade Assintótica de Algoritmos Letícia Rodrigues Bueno Introdução Objetivo: possibilitar medir eficiência de algoritmos; Introdução Objetivo: possibilitar medir eficiência de

Leia mais

Árvore AVL A seguir estudaremos árvore AVL e árvore 234. Os slides que versão sobre as árvores retro aludidas foram baseados nos slides gerados pela

Árvore AVL A seguir estudaremos árvore AVL e árvore 234. Os slides que versão sobre as árvores retro aludidas foram baseados nos slides gerados pela 488 Árvore AVL A seguir estudaremos árvore AVL e árvore 234. Os slides que versão sobre as árvores retro aludidas foram baseados nos slides gerados pela professora Elisa Maria Pivetta Cantarelli intitulados

Leia mais

ÁRVORES ABB (ÁRVORES BINÁRIAS DE BUSCAS) Sérgio Carlos Portari Júnior

ÁRVORES ABB (ÁRVORES BINÁRIAS DE BUSCAS) Sérgio Carlos Portari Júnior ÁRVORES ABB (ÁRVORES BINÁRIAS DE BUSCAS) Sérgio Carlos Portari Júnior Árvore Binária de Busca (ABB) o valor associado à raiz é sempre maior que o valor associado a qualquer nó da sub-árvore à esquerda

Leia mais

B-tree. B-Trees. Estrutura do nodo da B-tree. Balanceamento. Disposição dos elementos ordenados na B-tree. Exemplo de uma B-tree de ordem 3

B-tree. B-Trees. Estrutura do nodo da B-tree. Balanceamento. Disposição dos elementos ordenados na B-tree. Exemplo de uma B-tree de ordem 3 B-tree B-Trees Material da Prof. Denise Bandeira, aula de Christian Hofsetz B-Trees são árvores balanceadas. Diferente das árvores binárias, os nós de uma B-tree podem ter um número variável de nodos filho.

Leia mais

INE5408 Estruturas de Dados

INE5408 Estruturas de Dados INE5408 Estruturas de Dados - Características - Rotações Árvores AVL Características Manter uma árvore binária de busca balanceada sob a presença de constantes inserções e deleções é ineficiente. Para

Leia mais

Estrutura de Dados. Carlos Eduardo Batista. Centro de Informática - UFPB

Estrutura de Dados. Carlos Eduardo Batista. Centro de Informática - UFPB Estrutura de Dados Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Árvores (parte 3) Estruturas de Dados 2 Organização dos dados: Linear: Listas, pilhas, filas. Relação sequencial.

Leia mais

Heapsort Letícia Rodrigues Bueno

Heapsort Letícia Rodrigues Bueno Heapsort Letícia Rodrigues Bueno UFABC Heaps Heaps: lista linear com chaves s 1,..., s n com propriedade s i s i/2, para 1 < i < n; Heaps Heaps: lista linear com chaves s 1,..., s n com propriedade s i

Leia mais

Árvore B. Uma Árvore B de ordem m éumaárvore,talque: Cada nó contém no máximo m

Árvore B. Uma Árvore B de ordem m éumaárvore,talque: Cada nó contém no máximo m Árvore B Uma Árvore B de ordem m éumaárvore,talque: Cada nó contém no máximo m 1valores; Os valores dentro de cada nó estão ordenados; Todos os valores na subárvore esquerda de um valor são menores que

Leia mais

Exercícios: Árvores. Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de estrutura de dados em linguagem C

Exercícios: Árvores. Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de estrutura de dados em linguagem C Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de estrutura de dados em linguagem C Exercícios: Árvores 1. Utilizando os conceitos de grafos, defina uma árvore.

Leia mais

PROGRAMAÇÃO III (LTSI)

PROGRAMAÇÃO III (LTSI) ESTRUTURAS DE DADOS (LEI, LM, LEE) PROGRAMAÇÃO III (LTSI) Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2009/2010 Árvores Binárias AVL Tal como visto anteriormente, caso

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca 0. Um breve comentário sobre os algoritmos de busca em tabelas De uma maneira geral, realizam-se operações de busca, inserção e remoção de elementos numa tabela. A busca sequencial tradicional é O(N).

Leia mais

UNIVERSIDADE DE SÃO PAULO ICMC SCC 202 Algoritmos e Estrutura de Dados I - 2º Semestre 2010 Profa. Sandra Maria Aluísio;

UNIVERSIDADE DE SÃO PAULO ICMC SCC 202 Algoritmos e Estrutura de Dados I - 2º Semestre 2010 Profa. Sandra Maria Aluísio; UNIVERSIDADE DE SÃO PAULO ICMC SCC 202 Algoritmos e Estrutura de Dados I - 2º Semestre 2010 Profa. Sandra Maria Aluísio; e-mail: sandra@icmc.usp.br Lista de Exercícios Árvores, Árvores Binárias, Árvores

Leia mais

Aula 28: Listas de Prioridades

Aula 28: Listas de Prioridades 28.1 Aula 28: Listas de Prioridades Conceitos básicos Definição de heap Alteração de prioridades 28.2 Listas de Prioridades Motivação: Os dados possuem prioridades. A prioridade de um dado pode variar

Leia mais

Métodos de Pesquisa de Dados (II) Árvore N-ária de Pesquisa

Métodos de Pesquisa de Dados (II) Árvore N-ária de Pesquisa UFSC-CTC-INE INE5384 - Estruturas de Dados Métodos de Pesquisa de Dados (II) Prof. Ronaldo S. Mello 2002/2 Árvore N-ária de Pesquisa Uma Árvore N-ária de Pesquisa (ANP) é uma árvore que: contém m subárvores

Leia mais

Métodos de Pesquisa de Dados

Métodos de Pesquisa de Dados UFSC-CTC-INE INE5384 - Estruturas de Dados Métodos de Pesquisa de Dados Prof. Ronaldo S. Mello 22/2 Métodos de Pesquisa de Dados Encontrar um dado em um conjunto de dados de forma eficiente Baseia-se na

Leia mais

Árvores AVL. O balanceamento da árvore pode ser realizado localmente se apenas uma porção da árvore for afetada por operações de inserção ou remoção.

Árvores AVL. O balanceamento da árvore pode ser realizado localmente se apenas uma porção da árvore for afetada por operações de inserção ou remoção. Árvores Árvores AVL Os algoritmos vistos trabalham sobre a árvore toda. Se houver a necessidade de manter o balanceamento a cada inserção ou remoção, então sua eficiência fica bastante prejudicada. O balanceamento

Leia mais

Estruturas de Dados Apresentação da Disciplina

Estruturas de Dados Apresentação da Disciplina Estruturas de Dados Apresentação da Disciplina Prof. Alessandro Borges Tópicos Cabeçalho Ementa Objetivos Conteúdo Programático Estratégias de Ensino Sistema de Avaliação Bibliografia Cabeçalho CURSO:

Leia mais

Compactação de Dados Letícia Rodrigues Bueno

Compactação de Dados Letícia Rodrigues Bueno Compactação de Dados Letícia Rodrigues Bueno UFABC Compactação de Dados: Introdução Objetivo: Compactação de Dados: Introdução Compactação de Dados: Introdução Objetivo: 1. minimizar espaço de memória

Leia mais

Busca em vetores. Para encontrar um elemento em um vetor desordenado é caro Porém, inserir ou remover é barato.

Busca em vetores. Para encontrar um elemento em um vetor desordenado é caro Porém, inserir ou remover é barato. Busca em vetores Para encontrar um elemento em um vetor desordenado é caro Porém, inserir ou remover é barato. Busca em vetores Quando especificamos uma propriedade que garanta alguma organização, isto

Leia mais

Árvores B Partes I e II

Árvores B Partes I e II Estruturas de Dados Prof. Ricardo J. G. B. Campello Árvores B Partes I e II Motivação & Construção Bottom-Up Adaptado e Estendido dos Originais de: Leandro C. Cintra Maria Cristina F. de Oliveira A Invenção

Leia mais

Edital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões

Edital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões Edital de Seleção 024/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: «Nome» INSCRIÇÃO: «Inscrição» Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome

Leia mais

ÁRVORES BINÁRIAS DE BUSCA. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos

ÁRVORES BINÁRIAS DE BUSCA. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos ÁRVORES BINÁRIAS DE BUSCA Vanessa Braganholo Estruturas de Dados e Seus Algoritmos REFERÊNCIA Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Cap. 4 INSTITUTO DE COMPUTAÇÃO

Leia mais

Definição. Árvores B Parte III. Propriedades Gerais. Propriedade (No. Mín. de Chaves) Leandro C. Cintra Maria Cristina F.

Definição. Árvores B Parte III. Propriedades Gerais. Propriedade (No. Mín. de Chaves) Leandro C. Cintra Maria Cristina F. Algoritmos e Estruturas de Dados II Prof. Ricardo J. G. B. Campello Árvores B Parte III Eliminação, Redistribuição & Concatenação Adaptado e Estendido dos Originais de: Leandro C. Cintra Maria Cristina

Leia mais

Algoritmos e Estruturas de Dados II

Algoritmos e Estruturas de Dados II Algoritmos e Estruturas de Dados II Organização Revisão (DFS) Exemplo de Execução (DFS) Grafos V: e Ricardo J. G. B. Campello Parte deste material é baseado em adaptações e extensões de slides disponíveis

Leia mais

Árvores B. Árvores B Parte II. Características. Características. Construção Bottom-Up. Leandro C. Cintra Maria Cristina F. de Oliveira.

Árvores B. Árvores B Parte II. Características. Características. Construção Bottom-Up. Leandro C. Cintra Maria Cristina F. de Oliveira. Algoritmos e Estruturas de Dados II Prof. Ricardo J. G. B. Campello Árvores B Parte II Construção Bottom-Up Adaptado dos Originais de: Leandro C. Cintra Maria Cristina F. de Oliveira Árvores B Características

Leia mais

Árvores Binárias Balanceadas

Árvores Binárias Balanceadas Árvores Binárias Balanceadas Elisa Maria Pivetta Cantarelli elisa@fw.uri.br Árvores Balanceadas Uma árvore é dita balanceada quando as suas subárvores à esquerda e à direita possuem a mesma altura. Todos

Leia mais

Informações Importantes! INF TURMA A

Informações Importantes! INF TURMA A UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA DEPARTAMENTO DE INFORMÁTICA APLICADA DISCIPLINA: ESTRUTURAS DE DADOS CÓDIGO: INF01203 CURSOS/PRE-REQUISITO: o Engenharia da Computação

Leia mais

Edital de Seleção 023/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões

Edital de Seleção 023/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões Edital de Seleção 023/2018 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua

Leia mais

não descobertos descobertos explorados descoberta cruzamento

não descobertos descobertos explorados descoberta cruzamento Algoritmos e Estruturas de Dados II Organização Definição e Motivação Algoritmo BFS Pseudo-código Implementação simples em C Grafos III: Ricardo J. G. B. Campello Parte deste material é baseado em adaptações

Leia mais

Árvores Rubro-Negras Letícia Rodrigues Bueno

Árvores Rubro-Negras Letícia Rodrigues Bueno Árvores Rubro-Negras Leícia Rodrigues Bueno UFABC Árvores Rubro-Negras ( Red-Black Trees ): Inrodução Objeivo: garanir que operações básicas demorem O(lg n) no pior caso. Árvores Rubro-Negras ( Red-Black

Leia mais

{ = == NULL) = == NULL)

{ = == NULL) = == NULL) Com base no que foi discutido codifique uma função, na linguagem C, que implemente a remoção por cópia. void remocaoporcopia(arvorebinenc arvore) { ArvoreBinEnc prev, tmp = arvore; if (arvore->filhodir

Leia mais

ESTRUTURA DE DADOS DCC013. Árvore Binária de Busca

ESTRUTURA DE DADOS DCC013. Árvore Binária de Busca ESTRUTURA DE DADOS DCC013 Árvore Binária de Busca Árvore Binária de Busca Propriedade fundamental da árvore binária de busca Valor da chave da raiz é Maior do que o valor da chave da subárvore da esquerda

Leia mais