Академический Документы
Профессиональный Документы
Культура Документы
Representao de Grafos
Representao grfica: Representao grfica: til na prtica. til na prtica. No adequada para representar internamente (em um No adequada para representar internamente (em um computador) dados sobre a estrutura de grafos. computador) dados sobre a estrutura de grafos. Vrias formas de representar um grafo: Vrias formas de representar um grafo: Listas de Adjacncia. Listas de Adjacncia. Matriz de Adjacncia. Matriz de Adjacncia. Matriz de Incidncia. Matriz de Incidncia.
Representao de Grafos
Listas de Adjacncia
Consiste de um array Adj de |V| listas, um para cada vrtice Consiste de um array Adj de |V| listas, um para cada vrtice de V. de V. Para cada u em V, Adj[u] consiste de todos os vrtices de G Para cada u em V, Adj[u] consiste de todos os vrtices de G adjacentes a u. adjacentes a u. Vrtices armazenados de forma arbitrria na lista. Vrtices armazenados de forma arbitrria na lista. Tambm pode ser utilizada no caso de grafos dirigidos. Tambm pode ser utilizada no caso de grafos dirigidos.
Exemplo
2 3
1 2 3 4 5
2 1 2 3 1
5 5 4 2 4 5 2 3 4
Lista de Adjacncia
Forma compacta de representar grafos esparsos. Forma compacta de representar grafos esparsos. Utilizada com outras tipos de grafos. Utilizada com outras tipos de grafos. Ineficiente para determinar se vw est no grafo. Ineficiente para determinar se vw est no grafo.
Matriz de Adjacncia
Requer que os vrtices sejam numerados arbitrariamente de Requer que os vrtices sejam numerados arbitrariamente de 1, 2, ..., |V|. 1, 2, ..., |V|. Matriz A= (aij), de ordem |V| x |V|: Matriz A= (aij), de ordem |V| x |V|: aij = 1, se (i, j) E aij = 1, se (i, j) E aij = 0, caso contrrio aij = 0, caso contrrio
Exemplo
3 5 4 1 2 3 4 5 1 0 1 0 0 1 2 1 0 1 1 1 3 0 1 0 1 0 4 0 1 1 0 1 5 1 1 0 1 0
Matriz de Adjacncia
Prefervel em grafos pequenos. Prefervel em grafos pequenos. Requer apenas um bit por entrada. Requer apenas um bit por entrada. Vlido tambm com outros tipos de grafos. Exemplo: grafos Vlido tambm com outros tipos de grafos. Exemplo: grafos ponderados. ponderados. O(V22). O(V ).
Matriz de Incidncia
Matriz B= (bij), de ordem |V| x |E|: Matriz B= (bij), de ordem |V| x |E|: bij = 1, se vrtice vi e aresta ej forem incidentes bij = 1, se vrtice vi e aresta ej forem incidentes bij = 0, caso contrrio bij = 0, caso contrrio
Verificando Isomorfismo
Sejam A1 e A2 as matrizes de adjacncia de G1 e G2.. Se G1 Sejam A1 e A2 as matrizes de adjacncia de G1 e G2 Se G1 e G2 so isomrficos: e G2 so isomrficos: PA2PTT = A1 PA2P = A1 P uma matriz de permutao. P uma matriz de permutao.
1
e1
e2
2
e5
e6
e3
3 4
e7
e4
1 2 3 4 5
1 1 0 0 0 1
2 1 1 0 0 0
3 0 1 0 0 1
4 0 0 0 1 1
5 0 1 0 1 0
6 0 1 1 0 0
7 0 0 1 1 0
Teorema: Dois Grafos so isomrficos sss seus vrtices podem ser rotulados de tal forma que as correspondentes matrizes de adjacncias so iguais.
Exemplo
Exemplo
v1
v4
u1
u3
v2
v3
u2
u4
G1 0 1 A1= 0 1
Teoria dos Grafos
G2 0 1 0 1 1 0 1 0 0 0 A2= 1 1 0 0 1 1 1 1 0 0 1 1 0 0
Jorge Figueiredo, DSC/UFCG
1 0 1 0
Teorema: Dois Grafos rotulados G1 e G2, com respectivas matrizes A1 e A2, so isomrficos sss A2 = PA1PT, para alguma matriz de permutao P.
Exerccio
1. Voc e seu amigo retornam das frias e so recebidos no 1. Voc e seu amigo retornam das frias e so recebidos no aeroporto pelas mes e por duas irms do seu amigo. Aps aeroporto pelas mes e por duas irms do seu amigo. Aps troca de abraos, cada uma das (outras) cinco pessoas lhe troca de abraos, cada uma das (outras) cinco pessoas lhe fala o nmero de abraos que deu. Curiosamente, todos os fala o nmero de abraos que deu. Curiosamente, todos os nmeros so diferentes. Assumindo que: nmeros so diferentes. Assumindo que: Voc e seu amigo no se abraaram. Voc e seu amigo no se abraaram. A me de vocs no se abraaram. A me de vocs no se abraaram. As irms no se abraaram. As irms no se abraaram. Duas mesmas pessoas se abraaram, no mximo, uma Duas mesmas pessoas se abraaram, no mximo, uma vez. vez. Responda: Responda: 1. Quantas pessoas voc abraou? 1. Quantas pessoas voc abraou? 2. Quantas pessoas seu amigo abraou? 2. Quantas pessoas seu amigo abraou?
Teoria dos Grafos Jorge Figueiredo, DSC/UFCG