Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Árvores Binárias de Pesquisa (ABP)
Prof. Alexandre Parra Carneiro da Silva
2
Roteiro Definição de ABP Operações sobre ABP
Análise de Complexidade de ABPs
3
Roteiro Definição de ABP Operações sobre ABP
Análise de Complexidade de ABPs
4
Definição Uma árvore binária de pesquisa (ou de busca) obedece à seguinte propriedade: Seja x um nó de uma ABP. Se y é o nó raiz da sae de x, então chave[y] chave[x]. Se y é o nó raiz da sad de x, então chave[y] > chave[x].
5
Roteiro Definição de ABP Operações sobre ABP
Análise de Complexidade de ABPs
6
Operações sobre ABP As principais operações são:
Consulta; Inserção; Remoção. As operações inserção e remoção devem ser realizadas respeitando a propriedade das ABP.
7
Consulta de nós (1) Consulta com sucesso.
Exemplo: Na ABP abaixo, consultar os dados referenciados pelo nó de valor 3.
8
Consulta de nós (2) Consulta sem sucesso.
Exemplo: Na ABP abaixo, consultar os dados referenciados pelo nó de valor 9.
9
Inserção de nós (1) Esta operação identifica a posição correta e insere. A ordem em que os valores são inseridos é relevante. Exemplo 1: Inserir os nós 14 e 15. Exemplo 2: Inserir os nós 15 e 14. 12 16 10 9 1 7 2 8 4 3 raiz 11 12 16 10 9 1 7 2 8 4 3 raiz 11 14 15 15 14 Exemplo 1 Exemplo 2
10
Inserção de nós (2) Exemplo: Construir uma ABP a partir da seguinte lista de valores: 4,1,6,5,3,2 e 7.
11
Remoção de nós Três casos distintos a serem tratados: nó a ser removido tem zero, um ou dois filhos.
12
Remoção de nós – Caso 1 Caso 1: nodo a ser removido tem zero filhos
Simplesmente remove o nodo 12 16 10 9 1 7 2 8 4 3 raiz 11 12 16 10 raiz 9 1 7 2 8 4 3 Após a remoção
13
Remoção de nós – Caso 2 Caso 2: nodo a ser removido tem um filho
Substitui o nodo por seu filho 12 16 10 9 1 7 2 8 4 3 raiz 11 11 16 10 raiz 9 1 7 2 8 4 3 Após a remoção
14
Remoção de nós – Caso 3 Caso 3: nodo a ser removido tem dois filhos
Substitui o nodo por seu sucessor 16 10 9 1 7 2 8 4 3 raiz 11 12 11 16 10 raiz 9 1 2 8 7 3 Após a remoção nodo sucessor Pergunta: Poderíamos ter feito a substituição pelo nodo antecessor?
15
Nodo Sucessor e Antecessor
Considerando que as chaves sejam todas distintas: O sucessor de um nodo x é o nodo y, tal que chave[y] é o menor valor maior que chave[x]. O antecessor de um nodo x é o nodo y, tal que chave[y] é o maior valor menor que chave[x].
16
Roteiro Definição de ABP Operações sobre ABP
Análise de Complexidade de ABPs
17
Análise de complexidade (1)
Com relação a pesquisa Depende da quantidade de nós internos que eu precise visitar. Qual é a complexidade de uma busca com sucesso? Depende da ordem de inserção dos nós ao construir uma ABP. Figura 1 Figura 2 4, 6, 2, 5, 1, 7, , 2, 3, 4, 5, 6, 7
18
Análise de complexidade (2)
Complexidade de uma busca sem sucesso Melhor Caso: Árvore binária perfeita: O(log n) Figura 1 Árvore não balanceada: O(n) Figura 2 Figura 1 Figura 2 4, 6, 2, 5, 1, 7, , 2, 3, 4, 5, 6, 7
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.