Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouAurora Batista Marreiro Alterado mais de 8 anos atrás
1
INE5408 Estruturas de Dados Gerência de Arquivos -Propriedades de Árvores k-D
2
Construindo uma Árvore k-D balanceada Algoritmo: –Sempre usamos o ponto mediano do discriminante (coordenada) que estamos considerando neste momento para raiz da subárvore- k d –Se houver duplicação, pegamos qualquer um dos repetidos. Adiante, um exemplo com um conjunto de coordenadas 2D
3
Construindo uma Árvore k-D balanceada Suponha que queiramos inserir de forma balanceada estes pontos bi-dimensionais em uma árvore k d: (0.03, 0.90), (0.37, 0.04), (0.56, 0.78), (0.01, 0.48), (0.41, 0.89), (0.95, 0.07), (0.97, 0.09), (0.54, 0.65), (0.04, 0.61), (0.73, 0.69), (0.46, 0.58), (0.08, 0.89), (0.04, 0.41), (0.94, 0.02), (0.33, 0.07), (0.55, 0.54), (0.06, 0.05), (0.04, 0.06), (0.74, 0.97), (0.29, 0.15), (0.05, 0.88), (0.23, 0.23), (0.55, 0.02), (0.02, 0.97), (0.05, 0.07), (0.06, 0.28), (0.09, 0.55), (0.02, 0.91), (0.05, 0.97), (0.68, 0.42), (0.97, 0.18)
4
Construindo uma Árvore k-D balanceada Ordenamos os pontos com relação à 1ª coordenada (que é o 1º discriminante) e achamos a mediana: (0.01, 0.48), (0.02, 0.91), (0.02, 0.97), (0.03, 0.90), (0.04, 0.06), (0.04, 0.41), (0.04, 0.61), (0.05, 0.07), (0.05, 0.88), (0.05, 0.97), (0.06, 0.05), (0.06, 0.28), (0.08, 0.89), (0.09, 0.55), (0.23, 0.23), ( 0.29, 0.15), (0.33, 0.07), (0.37, 0.04), (0.41, 0.89), (0.46, 0.58), (0.54, 0.65), (0.55, 0.02), (0.55, 0.54), (0.56, 0.78), (0.68, 0.42), (0.73, 0.69), (0.74, 0.97), (0.94, 0.02), (0.95, 0.07), (0.97, 0.09), (0.97, 0.18)
5
Construindo uma Árvore k-D balanceada A mediana, (0.29, 0.15), forma a raiz da árvore k d:
6
Construindo uma Árvore k-D balanceada Isto particiona os pontos restantes em dois conjuntos idenependentes: {(0.01, 0.48), (0.02, 0.91), (0.02, 0.97), (0.03, 0.90), (0.04, 0.06), (0.04, 0.41), (0.04, 0.61), (0.05, 0.07), (0.05, 0.88), (0.05, 0.97), (0.06, 0.05), (0.06, 0.28), (0.08, 0.89), (0.09, 0.55), (0.23, 0.23)} {(0.33, 0.07), (0.37, 0.04), (0.41, 0.89), (0.46, 0.58), (0.54, 0.65), (0.55, 0.02), (0.55, 0.54), (0.56, 0.78), (0.68, 0.42), (0.73, 0.69), (0.74, 0.97), (0.94, 0.02), (0.95, 0.07), (0.97, 0.09), (0.97, 0.18)}
7
Construindo uma Árvore k-D balanceada Iniciando com o primeiro conjunto, reordenamo-lo de acordo com o 2º discriminante: (0.06, 0.05), (0.04, 0.06), (0.05, 0.07), (0.23, 0.23), (0.06, 0.28), (0.04, 0.41), (0.01, 0.48), (0.09, 0.55 ), (0.04, 0.61), (0.03, 0.90), (0.02, 0.91), (0.02, 0.97), (0.05, 0.88), (0.08, 0.89), (0.05, 0.97)
8
Construindo uma Árvore k-D balanceada Este pontro será o filho da esquerda da raiz:
9
Construindo uma Árvore k-D balanceada Tomando o segundo conjunto, também ordenamo- lo de acordo com o segundo discriminante: (0.55, 0.02), (0.94, 0.02), (0.37, 0.04), (0.33, 0.07), (0.95, 0.07), (0.97, 0.09), (0.97, 0.18), (0.68, 0.42 ), (0.55, 0.54), (0.46, 0.58), (0.54, 0.65), (0.73, 0.69), (0.56, 0.78), (0.41, 0.89), (0.74, 0.97)
10
Construindo uma Árvore k-D balanceada Isto cria o filho da cireita da raiz:
11
Construindo uma Árvore k-D balanceada Ordenamos pela mediana do 1º discriminante para achar os filhos de (0.09, 0.55): (0.01, 0.48), (0.04, 0.06), (0.04, 0.41), (0.05, 0.07), (0.06, 0.05), (0.06, 0.28), (0.23, 0.23), (0.02, 0.91), (0.02, 0.97), (0.03, 0.90), (0.04, 0.61), (0.05, 0.88), (0.05, 0.97), (0.08, 0.89)
12
Construindo uma Árvore k-D balanceada Fazemos o mesmo para as duas partições da direita: (0.33, 0.07), (0.37, 0.04), (0.55, 0.02), (0.94, 0.02), (0.95, 0.07), (0.97, 0.09), (0.97, 0.18) (0.41, 0.89), (0.46, 0.58), (0.54, 0.65), (0.55, 0.54), (0.56, 0.78), (0.73, 0.69), (0.74, 0.97)
13
Construindo uma Árvore k-D balanceada No próximo nível ordenamos os pontos de peloo 2º discriminante e tomamos asa medianas: (0.04, 0.06), (0.04, 0.41), (0.01, 0.48) (0.06, 0.05), (0.23, 0.23), (0.06, 0.28) (0.03, 0.90), (0.02, 0.91), (0.02, 0.97) (0.05, 0.88), (0.08, 0.89), (0.05, 0.97) (0.55, 0.02), (0.37, 0.04), (0.33, 0.07) (0.95, 0.07), (0.97, 0.09), (0.97, 0.18) (0.46, 0.58), (0.54, 0.65), (0.41, 0.89) (0.73, 0.69), (0.56, 0.78), (0.74, 0.97)
14
Construindo uma Árvore k-D balanceada Os pontos restantes serão folhas, organizados pelo 1º discriminante Resulta uma árvore 2-d com 31 nodos.
15
Exemplo de divisão do espaço por uma Árvore 3-D:
16
Atribuição-Uso Não-Comercial-Compartilhamento pela Licença 2.5 Brasil Você pode: - copiar, distribuir, exibir e executar a obra - criar obras derivadas Sob as seguintes condições: Atribuição — Você deve dar crédito ao autor original, da forma especificada pelo autor ou licenciante. Uso Não-Comercial — Você não pode utilizar esta obra com finalidades comerciais. Compartilhamento pela mesma Licença — Se você alterar, transformar, ou criar outra obra com base nesta, você somente poderá distribuir a obra resultante sob uma licença idêntica a esta. Para ver uma cópia desta licença, visite http://creativecommons.org/licenses/by-nc-sa/2.5/br/ ou mande uma carta para Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.