Grafos
-
Upload
geovanesouza -
Category
Documents
-
view
2 -
download
1
Transcript of Grafos
-
Estrutura de Dados 1
UNIP - Cincia da Computao e Sistemas de Informao
Estrutura de Dados
AULA 8
Grafos
-
Estrutura de Dados 2
Grafos - Motivao
Muitas aplicaes em computao necessitam considerar conjunto de conexes entre pares de objetos:
Existe um caminho para ir de um objeto a outro seguindo as conexes?
Qual a menor distncia entre um objeto e outro?
Quantos outros objetos podem ser alcanados a partir de um determinado objeto?
Grafo uma das estruturas matemticas
mais utilizadas na cincia.
-
Estrutura de Dados 3
Grafo - Definio
Grafo uma representao visual de um determinado conjunto de dados e da ligao
existente entre alguns elementos.
-
Estrutura de Dados 4
Grafos - Algumas Aplicaes
Alguns exemplos de problemas prticos que podem ser resolvidos atravs de uma
modelagem em grafos:
Ajudar mquinas de busca a localizar informao relevante na Web (Ex: Google Search)
Descobrir qual o roteiro mais curto para visitar as principais cidades de uma regio turstica.
(Ex: Google Maps, Mapas Rodovirios)
Circuitos Eltricos
Redes de Computadores
Redes de transporte e de comunicaes
-
Estrutura de Dados 5
DESAFIO
Problema dos canibais e dos missionrios:
Trs canibais e trs missionrios esto viajando juntos e chegam margem de um rio. O nico meio de transporte um barco que comporta apenas duas pessoas. Em nenhum momento o nmero de canibais pode ser superior ao nmero de missionrios.
Ref: http://www.plastelina.net/games/game2.html
COMO RESOLVER ESTE PROBLEMA USANDO GRAFOS?
-
Estrutura de Dados 6
Grafos
Um grafo G(V,A) definido pelo par de conjuntos V e A, onde:
V - conjunto no vazio: os vrtices ou ns do grafo;
A - conjunto de pares ordenados a = (v; w) so as arestas ou arcos do grafo.
Exemplo 1 - mdulo 1 teoria dos grafos.
Considere os conjuntos V e A definidos por:
V = {p/p uma pessoa} = {Maria, Pedro, Joana, Luiz }
A = {(v; w)/ v amigo de w } = {(Maria, Pedro), (Joana, Maria), (Pedro, Luiz), (Joana, Pedro)}
-
Estrutura de Dados 7
Grafos
Faa a representao grfica dos elementos do conjunto A. Esta representao chamada de GRAFO.
Soluo:
No grafo do exemplo 1 uma relao simtrica, ou seja, se ento . A
ligao entre os vrtices chamada de aresta.
-
Estrutura de Dados 8
Grafos
Exemplo 2 - mdulo 1 teoria dos grafos.
Considere os conjuntos V e A definidos por:
V = {p/p uma pessoa da famlia Silva} = {Emerson, Isadora, Renata, Antonio, Ceclia,
Alfredo}
A = {(v, w)/v pai ou me de w} = {(Isadora, Emerson), (Antonio, Renata), (Alfredo, Emerson),
(Ceclia, Antonio), (Alfredo, Antonio)}.
Faa a representao grfica dos elementos do conjunto A.
-
Estrutura de Dados 9
Grafos
No grafo exemplo a relao no simtrica pois se , no o caso de . H, portanto, uma orientao na relao, com um
correspondente efeito na representao grfica. Este
tipo de grafo chamado de grafo orientado ou digrafo,
sendo que as conexes entre os vrtices so chamadas
de arcos.
-
Estrutura de Dados 10
Grafos Exemplo 3 - mdulo 1 teoria dos grafos.
O problema das "Pontes de Knigsberg. Knigsberg era uma cidade da antiga Prssia, hoje chamada
Kaliningrado, na atual Rssia. Na parte central de
Knigsberg, cortado pelo rio Pregel. O rio Pregel tem
duas ilhas. Estas esto unidas por uma ponte. Uma ilha
tem uma ponte que a une ambas as margens, a outra
tem duas pontes para cada margem.
-
11
Grafos Faa uma representao em forma de grafo representando os
caminhos possveis de um habitante desta cidade fazer entre as
regies A, B, C e D. Podem os habitantes desta cidade atravessar
todas as sete pontes num s passeio contnuo?
Soluo: Colocando as regies A, B, C e D como vrtices temos:
No possvel um habitante desta cidade atravessar todas as sete pontes num s
passeio contnuo. Este fato foi provado por
Euler no sculo XVIII e considerado o
problema que deu origem a Teoria dos
Grafos.
Como h duas arestas entre os vrtices A e C e entre os vrtices A e B, o grafo do
exemplo 3 chamado de multigrafo.
-
12
Terminologia da Teoria dos Grafos
Ordem: o nmero de vrtices do grafo. A ordem do grafo do exemplo 1 4
Adjacncia: so os vrtices vizinhos No grafo do exemplo 1, Maria e Pedro so adjacncia.
Grau: o nmero de arestas incidentes num vrtice No grafo do exemplo 1 o grau vrtice (Pedro) = 3 No caso grafo orientado devemos distinguir grau de emisso do grau de recepo.
No grafo do exemplo 2 temos: grau de emisso de Antonio igual a 1 e grau de recepo de Antonio igual a 2.
Nos grafos orientados podemos tambm definir: fonte que um vrtice com grau de recepo igual a zero e sumidouro que um
vrtice com grau de emisso igual a zero.
No grafo do exemplo 2, Isadora, Alfredo e Ceclia so fontes enquanto que Renata e Emerson so sumidouros.
-
13
Terminologia da Teoria dos Grafos
Lao (ou loop): uma aresta (ou arco) cujas terminaes esto no mesmo vrtice. No grafo da figura ao lado a1 um lao.
Caminho: uma sequncia de vrtices tal que de cada um dos vrtices existe uma aresta para o vrtice seguinte.
Um caminho chamado simples se nenhum dos vrtices no caminho se repete. O comprimento do caminho o nmero de
arestas que o caminho usa, contando-se arestas mltiplas mltiplas
vezes.
Dois caminhos so independentes se no tiverem nenhum vrtice em comum, excepto o primeiro e o ltimo.
Ciclo (ou circuito): um caminho que comea e acaba com o mesmo vrtice.
Ciclos de comprimento 1 so laos. Um ciclo simples um ciclo que tem um comprimento pelo menos de 3 e no qual o vrtice inicial s aparece mais uma vez, como vrtice
final, e os outros vrtices aparecem s uma vez.
Um grafo chama-se acclico se no contm ciclos simples