Prof. M.Sc. Fábio Francisco da Costa Fontes Abril

Slides:



Advertisements
Apresentações semelhantes
Cortes (cut-sets)‏ 1.
Advertisements

Árvores 2010/1 Teoria dos Grafos (INF 5037/INF2781)
Árvores CC/EC/Mestrado Teoria dos Grafos ‏ 1.
Algoritmos em Grafos (Parte 2)
Prof. M.Sc. Fábio Francisco da Costa Fontes Maio
Antonio Dirceu Rabelo de Vasconcelos Filho
Fluxo em Redes Prof. Ricardo R. Santos.
Análise de Decisão Aplicada a Gerência Empresarial – UVA Grafos - V
Exercícios PAA- Grafos
Exercícios PAA- Grafos
Pontes Seja (G) o número de componentes conexas de G. Uma ponte é uma aresta a tal que (G - a) > (G)
UFES CC/EC/Mestrado Teoria dos Grafos Árvores. UFES CC/EC/Mestrado Teoria dos Grafos Árvores Grafo Acíclico: não possui ciclos.
Algoritmo polinomial para geração de uma Árvore Geradora Mínima
Métodos para representação de estruturas hierárquicas
Estrutura de Dados e Algoritmos e Programação e Computadores II
CONCEITOS BÁSICOS DE GRAFOS
Conexidade e Conectividade
CONCEITOS BÁSICOS DE GRAFOS
Prof. M.Sc. Fábio Francisco da Costa Fontes Abril
ESTRUTURA E REPRESENTAÇÃO
Teoria dos Grafos – Aula 3 Árvores
Teoria dos Grafos Loana T. Nogueira Aula 5.
Árvore Binária - altura máxima A: Inserção de 1, 2, 3, 4, 5, 6 e 7 Pior caso: O(n)
Árvores.

David Menotti Algoritmos e Estruturas de Dados I DECOM – UFOP
SEMINÁRIO DE ALGORITMOS
Árvore Geradora de Peso Mínimo
Árvores Introdução e Aplicações Árvores de Busca Binária Fundamentos
Ronaldo Celso Messias Correia –
Pesquisa Operacional - Profa Úrsula L. F. Ribeiro
Prof. Ernesto Lindstaedt
Árvore Geradora Mínima
Fundamentos sobre Árvores
Buscas em Grafos Prof. André Renato 1º Semestre/2012
Baseado em: The Algorithm Design Manual Steven S. Skiena
Algoritmos em Grafos.
Algoritmos em Grafos Conceitos principais Prof. André Renato
T ÓPICOS DE I.A. Métodos de Busca Busca em Espaços de Estado Prof. Mário Dantas.
Grafos Árvores Geradoras.
Teoria dos Grafos Caminhos e Noção de Grafos com pesos
Teoria dos Grafos Definições e Terminologia
Exercícios PAA- Grafos
Algorítmos e estrutura de dados III
Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada a um dado pode ser qualquer.
Conceitos básicos em grafos
ÁRVORES Def.: Um grafo é acíclico se não possui ciclos.
Á R V O R E S.
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Conceito de Árvores – Árvores Binárias
Busca Combinatorial e Métodos de Heurística

Disciplina Análise de Algoritmos Bacharelado em CC
Msc. Daniele Carvalho Oliveira
© 2011 Pearson Prentice Hall. Todos os direitos reservados.slide 1 © 2011 Pearson Prentice Hall. Todos os direitos reservados.slide 1 © 2011 Pearson Prentice.
Katia S. Guimarães Busca em Grafos Katia S. Guimarães
Aula de Monitoria – Miniprova

Introdução a Algoritmos em Grafos.

Mestrado em Informática
Celso C. Ribeiro Caroline T. Rocha
Prof. Daniel Morais dos Reis
Árvores (introdução) Anjolina Grisi de Oliveira Obs: vários slides foram cedidos por Adolfo Almeida Duran (UFBA)
Árvores e Árvores Binárias
Árvores Estrutura de dados que se caracteriza por uma relação de
 Prof. Miguel Gabriel Prazeres de Carvalho 1. 2 Redes Sociais GPS Para o correio. Para Viajantes. Pesquisas Biológicas. Distribuição de Tarefas. Recomendações.
Grafos Prof. Miguel Gabriel Prazeres de Carvalho.
Transcrição da apresentação:

Prof. M.Sc. Fábio Francisco da Costa Fontes Abril - 2009 Á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 Geralmente os algoritmos de árvores são muito mais eficientes que os algoritmos que trabalham com grafos Solução ótima para o processamento, gerenciamento e recuperação de informações (árvores binárias)

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

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

Propriedades Básicas 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 Obs: Uma ponte é uma aresta cuja retirada desconecta o grafo

Portanto sendo G = (V, E) um grafo, com n >= 2 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

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

Á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

Aplicações Á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 o

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

Aplicações Á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. a v u t s t u y x s z y a v x z

Terminologia Designando uma raiz numa árvore impõe uma hierarquia nos vértices, de acordo com as distâncias até a raiz A profundidade 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

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)

Terminologia 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. 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

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.

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

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

Árvores Binárias Árvores binárias estão entre as estruturas de dados mais utilizadas da 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. r Árvore binária de altura 3

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

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 r b a c d e f Você pode garantir que determinou realmente todas?

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:

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

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).

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

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