25
Árvore 2-3-4 Augusto Falcão Daniel Alves Italo Bruno Robson Ribeiro

Apresentação árvore 2 3 4

Embed Size (px)

Citation preview

Page 1: Apresentação árvore 2 3 4

Árvore 2-3-4Augusto Falcão

Daniel AlvesItalo Bruno

Robson Ribeiro

Page 2: Apresentação árvore 2 3 4

Índice● Características

● Pesquisa

● Inserção

● Remoção

● Aplicações Práticas

Page 3: Apresentação árvore 2 3 4

CARACTERÍSTICAS

Page 4: Apresentação árvore 2 3 4

CaracterísticasA generalização de um nó permite múltiplas chaves e filhos.

A árvore 2-3-4 ou 2-4 é uma árvore ordenada balanceada.

Cada nó pode ter no máximo quatro nós filhos.

Assim como a árvore 2-3, ela mantém o balanço perfeito, ou seja, todos os nós externos têm a mesma profundidade.

Page 5: Apresentação árvore 2 3 4

CaracterísticasEste tipo de árvore permite 1, 2 ou 3 chaves por nó

2-nós: uma chave e dois filhos3-nós: duas chaves e três filhos4-nós: três chaves e quarto filhos

Os 2, 3 e 4, no nome árvore 2-3-4, referem-se a quantos links para filhos podem estar contidos em cada nó.

Um nó com um item de dado precisa ter sempre dois filhos, a menos que seja um nó folha, e neste caso, ele não possui filhos.

Page 6: Apresentação árvore 2 3 4

Características F G J

A B C D

Os 4-nós tem as seguintes propriedades:● Cada valor v inserido na subárvore A deve ser <= F● Cada valor v inserido na subárvore B deve ser > F e <= G● Cada valor v inserido na subárvore C deve ser > G e <= J● Cada valor v inserido na subárvore D deve ser > J● O tamanho do caminho a partir da raiz do 4-nós até a qualquer folha

deve ser o mesmo.

Page 7: Apresentação árvore 2 3 4

PESQUISA

Page 8: Apresentação árvore 2 3 4

PesquisaA busca de um item de dados se inicia na raiz . Se a chave de procura não for encontrada lá, seleciona-se um link para a subárvore com a seqüência apropriada de valores.Para tornar a operação de busca mais clara vamos efetuá-la buscando o valor-chave 84 na árvore abaixo. Para isso seguiremos os seguintes passos:1) Iniciamos a busca na raiz;2) Comparamos o valor-chave com a raiz;3) Como 84 é maior que 60, continuamos a busca no filho da direita;4) No nó 70/86 podemos perceber que 84 está entre 70 e 86, então passamos para o nó compreendido entre tais valores;5) Desta vez encontramos o valor-chave no terceiro campo de dados;

Page 9: Apresentação árvore 2 3 4

Pesquisa

Page 10: Apresentação árvore 2 3 4

INSERÇÃO

Page 11: Apresentação árvore 2 3 4

InserçãoQuando ocorre a tentativa de inserção de um item em uma página folha cheia,

a página folha é então dividida em duas páginas folha, o item do meio sobe para a página pai, e os elementos com chave menores ficam na página folha da esquerda e os itens com chaves maiores na página folha da direita.

Page 12: Apresentação árvore 2 3 4

InserçãoExemplo 1: Insira o elemento 70 na árvore 2-3-4

Nó cheio. Solução: dividir o nó em dois e subir o elemento do meio para o nó pai, que nesse caso vai ser acabar criando um novo nó raiz.

Page 13: Apresentação árvore 2 3 4

InserçãoExemplo 2: Insira os elementos 20, 40 e 10 na árvore 2-3-4.

Nó cheio. Solução: dividir o nó em dois e subir o elemento do meio para o nó pai.

Page 14: Apresentação árvore 2 3 4

InserçãoExemplo 2: Insira os elementos 20, 40 e 10 na árvore 2-3-4.

Page 15: Apresentação árvore 2 3 4

InserçãoExemplo 3: Insira os elementos 55 e 80 na árvore 2-3-4.

Nó cheio. Solução: dividir o nó em dois e subir o elemento do meio para o nó pai.

Page 16: Apresentação árvore 2 3 4

InserçãoExemplo 3: Insira os elementos 55 e 80 na árvore 2-3-4.

Page 17: Apresentação árvore 2 3 4

InserçãoExemplo 4: Insira os elementos 62 e 75.

Nó cheio. Solução: dividir o nó em dois e subir o elemento do meio para o nó pai.

Page 18: Apresentação árvore 2 3 4

InserçãoExemplo 4: Insira os elementos 62 e 75.

Nó cheio. Solução: dividir o nó em dois e subir o elemento do meio para o nó pai.

Page 19: Apresentação árvore 2 3 4

InserçãoExemplo 4: Insira os elementos 62 e 75.

Page 20: Apresentação árvore 2 3 4

REMOÇÃO

Page 21: Apresentação árvore 2 3 4

RemoçãoExemplo 1: Remova o elemento 50 da árvore 2-3-4.

Os dois filhos da raiz são unidos e a árvore é reconfigurada.

Page 22: Apresentação árvore 2 3 4

RemoçãoExemplo 2: Remova o elemento 30 da árvore 2-3-4.

O item 30 é substituído pelo item 40.

Page 23: Apresentação árvore 2 3 4

RemoçãoExemplo 1: Remova o elemento 40 da árvore 2-3-4.

As duas páginas folhas do item removido são agrupadas em uma única folha.

Page 24: Apresentação árvore 2 3 4

APLICAÇÕES PRÁTICAS

Page 25: Apresentação árvore 2 3 4

Aplicações PráticasDicionários

Auto Completar (Code completion)