1 / 26

ÁRVORE

ÁRVORE. Prof. M.Sc. Fábio Francisco da Costa Fontes Abril - 2009. Introdução. Um grafo sem ciclos (com n 2) é conhecido também como floresta. Uma árvore é um grafo sem ciclos conexo. Introdução. Árvores são muito importantes para o entendimento e utilização prática de grafos

lee-snider
Download Presentation

ÁRVORE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ÁRVORE Prof. M.Sc. Fábio Francisco da Costa Fontes Abril - 2009

  2. Introdução Um grafo sem ciclos (com n 2) é conhecido também como floresta. Uma árvore é um grafo sem ciclos conexo.

  3. Introdução Árvores são muito importantes para o entendimento e utilização prática de grafos Geralmente os algoritmos de árvores são muito mais eficientes que os algoritmos que trabalham com grafos Solução ótimapara o processamento, gerenciamento e recuperação de informações (árvores binárias)

  4. Caracterização de Árvores Árvore Não é árvore Não é árvore Definição: uma árvore é um grafo conectado sem ciclos.

  5. Caracterização de Árvores Folha deletada Definição: em uma árvore não direcionada, uma folha é um vértice de grau 1. Se uma folha é deletadade uma árvore, o resultado continua sendo uma árvore (com um vértice a menos)

  6. Propriedades Básicas Obs: Uma ponte é uma aresta cuja retirada desconecta o grafo Toda árvore com n vértices contém exatamente n-1 arestas Uma árvore é um grafo conectado em que toda aresta é uma ponte Quaisquer dois vértices são conectados exatamente por um caminho Toda árvore com pelo menos uma aresta tem no mínimo duas folhas

  7. Portanto sendo G = (V, E) um grafo, com n >= 2. As propriedades para caracterizar G como uma árvore são: • G é sem ciclos e conexo • G é sem ciclos e tem n – 1 arestas • G é conexo e tem n – 1 arestas • G é sem ciclos e a adição de uma aresta cria um ciclo único • G é conexo, mas G’ = G – e é não conexo para todo e pertencente a E • Todo par de vértices de G é unido por uma cadeia única

  8. Isomorfismo de árvores Os dois grafos tem a mesma seqüência de graus, mas não são isomórficos Existe um algoritmo de tempo linear para testar o isomorfismo de árvores

  9. Árvores enraizadas Definição: uma árvore direcionadaé um dígrafo cujo grafo de base (não direcionado) é uma árvore Definição: uma árvore enraizadaé uma árvore com um vértice designado como raiz. Cada aresta é direcionada no sentido de se afastar da raiz. Uma árvore enraizadaé uma árvore direcionada cuja raiz tem grau de entrada 0 e todos os demais vértices tem grau de entrada 1

  10. Aplicações x x x x x x x o o x x o o o o x Árvores de decisão: programas de computador que precisam elaborar estratégias complexas de tomada de decisão são muitas vezes baseados em árvores enraizadas. x

  11. Aplicações frase sujeito predicado verbo complemento substantivo substantivo adjetivo Análise de frases: uma árvore enraizada pode ser usada para analisar frases em linguagem natural. José tem dois sapatos

  12. Aplicações a v u t s t u y x s z y a v x z Árvore de caminho mais curto: para um grafo conectado G com vértice v, uma árvore enraizada fornece uma forma de visualizar para cada w  VG, um caminho mais curto de v para w.

  13. Terminologia Designando uma raiz numa árvore impõe uma hierarquia nos vértices, de acordo com as distâncias até a raiz Aprofundidade ou nível de um vértice v é a sua distância para a raiz A altura de uma árvore é o comprimento de um caminho mais longo a partir da raiz até uma folha

  14. Terminologia Se no caminho da raiz para um vértice w, o vértice v precede imediatamente o vértice w, então v é chamado pai de w, e w é filho de v. Vértices com o mesmo pai são chamados de irmãos Um vértice w é descendente de um vértice v, se v está no caminho da raiz ao vértice w (v é ancestral de w)

  15. Terminologia r Altura = 3 Internos: r, a, b, c, d Folhas: e, f, g, h, i, j Irmãos: g, h, i a é ancestral de j j é descendente de a a b c d e f g h i j Uma folha em uma árvore enraizada é qualquer vértice que não tem filhos. Um vértice internoé qualquer vértice que tem pelo menos um filho. A raiz é um vértice interno, a não ser que a árvore seja trivial.

  16. Tipos de árvores Muitas aplicações impõem um limite para o número de filhos que um vértice pode ter Uma árvore m-áriaé uma árvore enraizada em que todo vértice tem no máximo m filhos Uma árvore m-ária completaé uma árvore m-ária em que todo vértice interno tem exatamente m filhos e todos os filhos tem o mesmo nível.

  17. Isomorfismo para enraizadas Isomorfas como árvores enraizadas Isomorfas como árvores Duas árvores enraizadas são isomórficas como árvores enraizadasse existir um isomorfismo de grafo entre elas que mapeie raiz com raiz.

  18. Representação Computacional r a b c d e f Um vetor de paispode ser usado para representar uma árvore enraizada no computador

  19. Árvores Binárias r Árvores binárias estão entre as estruturas de dados mais utilizadasda ciência da computação Definição: uma árvore binária é uma árvore ordenada 2-ária em que cada filho é classificado como filho esquerdo ou filho direito. Árvore binária de altura 3

  20. Visão Recursiva r sub-árvore esquerda sub-árvore direita Uma árvore bináriaconsiste de uma raiz e uma sub-árvore esquerda e direita, que são também árvores binárias.

  21. r a b c d e f Exercício 1 – Desenhe todas as árvores com 6 vértices e com 7 vértices. 2 – Especifique o vetor de pais para o grafo H abaixo: 3 – Determine todas as árvores parciais do grafo G a seguir. G H Você pode garantir que determinou realmente todas?

  22. O problemas da Árvore Geradora Mínima (minimum spanning tree) Um problema de interesse em grafos é o problema de determinação da árvore geradora de custo mínimo ou, simplesmente, árvore geradora mínima de um grafo. • O número de árvores geradoras em um grafo completo, não-orientado Kn é igual a:

  23. O problemas da Árvore Geradora Mínima (minimum spanning tree) • Grafo sem pesos: qualquer árvore geradora tem custo mínimo • Grafo com pesos diferentes:

  24. O problemas da Árvore Geradora Mínima (minimum spanning tree) Prob. Otimização Combinatória (POC): Determinar a árvore geradora de peso mínimo (p/ n = 8, Árvores Geradoras = 262.144 escolhas).

  25. O problemas da Árvore Geradora Mínima (minimum spanning tree) A árvore geradora mínima não representará necessariamente a interconecção mais curta entre os n vértices de um grafo G Trata-se de um problema de interligação ótima em grafos não orientados que são, habitualmente, modelos de redes nas quais algum tipo de serviço é distribuido e o custo de cada elemento da rede não depende da maior ou menor distância até algum ponto-chave

  26. O problemas da Árvore Geradora Mínima (minimum spanning tree) Exemplos de aplicação prática?

More Related