Estruturas de Dados Arvores - PowerPoint PPT Presentation

About This Presentation
Title:

Estruturas de Dados Arvores

Description:

Estruturas de Dados Arvores Arvores Balanceadas Prof. Rosana Estruturas de Dados - rvores Conforme se sabe, as rvores bin rias s o casos particulares de rvores. – PowerPoint PPT presentation

Number of Views:79
Avg rating:3.0/5.0
Slides: 14
Provided by: Windo289
Category:

less

Transcript and Presenter's Notes

Title: Estruturas de Dados Arvores


1
Estruturas de DadosArvores
  • Arvores Balanceadas
  • Prof. Rosana

2
Estruturas de Dados - Árvores
  • Conforme se sabe, as árvores binárias são casos
    particulares de árvores.
  • Sendo uma estrutura de dados hierárquica, ela
    pode facilmente se tornar desbalanceada.

3
Árvores Binárias
4
Estruturas de Dados - Arvores
  • De acordo com o tipo de algoritmo de
    balanceamento estas árvores recebem nomes
    especiais como
  • Árvore AVL
  • Árvore Rubro-Negra
  • Árvore B
  • Etc..

5
Árvore AVL
  • Árvore AVL (ou árvore balanceada pela altura) é
    uma árvore de busca binária auto-balanceada.
  • Em tal árvore, as alturas das duas sub-árvores a
    partir de cada nó difere no máximo em uma
    unidade.
  • As operações de busca, inserção e eliminação de
    elementos possuem complexidade O(logn) (no qual n
    é o número de elementos da árvore).
  • Inserções e eliminações podem também requerer o
    rebalanceamento da árvore, exigindo uma ou mais
    rotações.
  • O nome AVL vem de seus criadores Adelson Velsky e
    Landis, e sua primeira referência encontra-se no
    documento "Algoritmos para organização da
    informação" de 1962.
  • Wiikipédia

6
Árvores AVL
  • Balanceamento
  • Uma árvore AVL é dita balanceada quando, para
    cada nó da árvore, a diferença entre as alturas
    das suas sub-árvores (direita e esquerda) não é
    maior do que um.
  • Caso a árvore não esteja balanceada é necessário
    seu balanceamento através da rotação simples ou
    rotação dupla.
  • O balanceamento é requerido para as operações de
    adição e exclusão de elementos.
  • Para definir o balanceamento é utilizado um fator
    específico para nós.
  • O fator de balanceamento de um nó é dado pelo seu
    peso em relação a sua sub-árvore. Um nó com fator
    balanceado pode conter 1, 0, ou -1 em seu fator.
  • Um nó com fator de balanceamento diferente dos
    citados é considerado uma árvore não-AVL e requer
    um balanceamento por rotação ou dupla-rotação.

7
Árvore Rubro-Negra
  • Uma árvore rubro-negra é um tipo de árvore de
    busca binária balanceada.
  • A estrutura original foi inventada em 1972 por
    Rudolf Bayercarece de fontes? que a chamou de
    "Árvores Binárias B Simétricas", mas adquiriu
    este nome moderno em um artigo de 1978 escrito
    por Leonidas J. Guibas e Robert Sedgewick..1
    Ela é complexa, mas tem um bom pior-caso de tempo
    de execução para suas operações e é eficiente na
    prática pode-se buscar, inserir, e remover em
    tempo O(log n), onde n é o número total de
    elementos da árvore.
  • De maneira simplificada, uma árvore rubro-negra é
    uma árvore de busca binária que insere e remove
    de forma inteligente, para assegurar que a árvore
    permaneça aproximadamente balanceada.

8
Árvore Rubro_negra
  • Uma árvore rubro-negra é uma árvore de busca
    binária onde cada nó tem um atributo de cor,
    vermelho ou preto. Além dos requisitos ordinários
    impostos pelas árvores de busca binárias, as
    árvores rubro-negras tem os seguintes requisitos
    adicionais
  • Um nó é vermelho ou preto.
  • A raiz é preta. (Esta regra é usada em algumas
    definições. Como a raiz pode sempre ser alterada
    de vermelho para preto, mas não sendo válido o
    oposto, esta regra tem pouco efeito na análise.)
  • Todas as folhas(null) são pretas.
  • Ambos os filhos de todos os nós vermelhos são
    pretos.
  • Todo caminho de um dado nó para qualquer de seus
    nós folhas descendentes contem o mesmo número de
    nós pretos.
  • Essas regras asseguram uma propriedade crítica
    das árvores rubro-negras que o caminho mais
    longo da raiz a qualquer folha não seja mais do
    que duas vezes o caminho mais curto da raiz a
    qualquer outra folha naquela árvore. O resultado
    é que a árvore é aproximadamente balanceada. Como
    as operações de inserção, remoção, e busca de
    valores necessitam de tempo de pior caso
    proporcional à altura da árvore, este limite
    proporcional a altura permite que árvores
    rubro-negras sejam eficientes no pior caso,
    diferentemente de árvore de busca binária.
  • Wiikipédia

9
Árvore Rubro-negra
10
Árvore B
  • Árvore B ou B-Tree é um tipo de árvores muito
    utilizado em banco de dados e em sistemas de
    arquivos.
  • Para inserir ou remover variáveis de um nó, o nó
    não poderá ultrapassar sua ordem e nem ser menor
    que sua ordem dividida por dois. Árvores B não
    precisam ser rebalanceadas como são
    freqüentemente as árvores de busca binária com
    Árvore AVL.
  • Árvores B têm vantagens substanciais em relação a
    outros tipos de implementações quanto ao tempo de
    acesso e pesquisa aos nós.
  • O criador das árvores B, Rudolf Bayer, não
    definiu claramente de onde veio o B das árvores
    B. Ao que parece, o B vem de balanceamento onde
    todos os nós folhas da árvore estão em um mesmo
    nível. Também é possível que o B tenha vindo de
    seu sobrenome Bayer, ou ainda do nome da empresa
    onde trabalhava, a Boeing Scientific Research
    Labs.


  • Wiikipédia

11
Árvore B
  • DEFINIÇÃO
  • Uma árvore B de ordem "m" (máximo de filhos para
    cada nó) é uma árvore que atende as seguintes
    propriedades
  • Cada nó tem no máximo "m" filhos
  • Cada nó (exceto a raíz e as folhas) tem pelo
    menos "m/2" filhos
  • A raiz tem pelo menos dois filhos se a mesma não
    for uma folha
  • Todas as folhas aparecem no mesmo nível e não
    carregam informação
  • Um nó não-folha com "k" filhos deve ter k-1
    chaves

12
Árvore B
13
Fonte de Consulta
  • Wikipédia (Estruturas de dados Ávores)
Write a Comment
User Comments (0)
About PowerShow.com