teoria dos grafos

157
PDF gerado usando o pacote de ferramentas em código aberto mwlib. Veja http://code.pediapress.com/ para mais informações. PDF generated at: Thu, 02 May 2013 03:28:05 UTC Teoria dos Grafos Grafos individuais

Upload: robson-pompeu

Post on 30-Oct-2015

444 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 1/157PDF gerado usando o pacote de ferramentas em código aberto mwlib. Veja http://code.pediapress.com/ para mais informações.

PDF generated at: Thu, 02 May 2013 03:28:05 UTC

Teoria dos GrafosGrafos individuais

Page 2: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 2/157

Conteúdo

Páginas

Introdução - Teoria dos Grafos 1

Sete pontes de Königsberg 1

Teoria dos grafos 2

Conceitos Básicos e Definições 8

Grafo 8

Vértice 9

Aresta 11

Aresta múltipla 12

Ciclos em um grafo 12

Clique 12

O grau de um grafo 13

Grafo bipartido 15

Grafo bipartido completo 17

Grafo caminho 19

Grafo completo 20

Grafo cúbico 20

Grafo Estrela 23

Grafo nulo 24

Grafo orientado 25

Grafo simples 28

Grafo valorado 28

Homomorfismo de grafos 29

Isomorfismo de grafos 30

Laço 32

Multigrafo 33

Pseudografo 34

Quiver 36

Vértice de corte (teoria dos grafos) 37

Vizinhança 40

Árvores 42

Árvores 42

Page 3: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 3/157

Árvore de extensão 43

Árvore de extensão mínima 44

Representação de Grafos 46

Matriz de adjacência 46

Matriz de incidência 48

Lista de adjacência 49

Automorfismo de grafos 52

Automorfismo de grafos 52

Grafo regular 55

Grafo fortemente regular 57

Grafo distância-regular 60

Grafo distância-transitivo 63

Grafo simétrico 65

Grafo meio-transitivo 68

Grafo semissimétrico 69

Grafo aresta-transitivo 70

Grafo vértice-transitivo 71

Grafo de Cayley 73

Grafo antissimétrico 75

Grafo assimétrico 77

Algoritmos em Grafos 79

Busca em largura 79

Busca em profundidade 86

Caminho 88

Caminho euleriano 89

Caminho hamiltoniano 90

Ordenação topológica 92Algoritmo de Bellman-Ford 94

Algoritmo A* 97

Algoritmo de Floyd-Warshall 98

Algoritmo de Johnson 100

Algoritmos para obter a árvore de extensão mínima 102

Algoritmo de Kruskal 102

Algoritmo de Prim 103

Algoritmo de Dijkstra 109

Page 4: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 4/157

Algoritmo de Boruvka 113

Grafos individuais 116

Grafo de Biggs-Smith 116

Grafo de Brouwer-Haemers 118

Grafo de Desargues 119

Grafo de Folkman 121

Grafo de Foster 123

Grafo de Frucht 125

Grafo de Gray 126

Grafo de Heawood 128

Grafo de Higman-Sims 130

Grafo de Hoffman-Singleton 132Grafo de Holt 133

Grafo de Ljubljana 135

Grafo de Nauru 137

Grafo de Pappus 140

Grafo de Petersen 142

Grafo de Shrikhande 144

Grafos de Chang 146

ReferênciasFontes e Editores da Página 147

Fontes, Licenças e Editores da Imagem 149

Licenças das páginasLicença 153

Page 5: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 5/157

1

Introdução - Teoria dos Grafos

Sete pontes de Königsberg

Esquema de pontes.

Grafo estilizado das pontes.

Sete pontes de Königsberg é um famoso

problema histórico da matemática resolvido

por Leonhard Euler em 1736, cuja solução

originou a teoria dos grafos.[1]

O problema é baseado na cidade de

Königsberg (território da Prússia até 1945,

atual Kaliningrado), que é cortada pelo Rio

Prególia, onde há duas grandes ilhas que,

 juntas, formam um complexo que na época

continha sete pontes, conforme mostra a

figura ao lado. Das sete pontes originais,

uma foi demolida e reconstruída em 1935,

duas foram destruídas durante a Segunda

Guerra Mundial e outras duas foram

demolidas para dar lugar a uma única via

expressa. Atualmente apenas duas pontes

são da época de Leonard Euler.

Discutia-se nas ruas da cidade apossibilidade de atravessar todas as pontes

sem repetir nenhuma. Havia-se tornado uma

lenda popular a possibilidade da façanha

quando Euler, em 1736, provou que não

existia caminho que possibilitasse tais

restrições.

Euler usou um raciocínio muito simples.

Transformou os caminhos em retas e suas intersecções em pontos, criando possivelmente o primeiro grafo da

história. Então percebeu que só seria possível atravessar o caminho inteiro passando uma única vez em cada ponte se

houvesse exatamente zero ou dois pontos de onde saísse um número ímpar de caminhos. A razão de tal coisa é quede cada ponto deve haver um número par de caminhos, pois será preciso um caminho para "entrar" e outro para

"sair". Os dois pontos com caminhos ímpares referem-se ao início e ao final do percurso, pois estes não precisam de

um para entrar e um para sair, respectivamente. Se não houver pontos com número ímpar de caminhos, pode-se (e

deve-se) iniciar e terminar o trajeto no mesmo ponto, podendo esse ser qualquer ponto do grafo. Isso não é possível

quando temos dois pontos com números ímpares de caminhos, sendo obrigatoriamente um o início e outro o fim.

Duas das sete pontes originais da cidade foram destruídas durante do bombardeamento de Königsberg em agosto de

1944.[2]

[1] Leonhard Euler: Solutio problematis ad geometriam situs pertinentis (http:/   /  www. math.  dartmouth.  edu/  ~euler/  docs/  originals/  E053.  pdf)

Page 6: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 6/157

Teoria dos grafos 2

Teoria dos grafos

Grafo com 4 vértices e 6 arestas. É um grafo

completo, conexo e planar.

A teoria dos grafos é um ramo da matemática que estuda as relações

entre os objetos de um determinado conjunto. Para tal são empregadas

estruturas chamadas de grafos, G(V,A), onde V é um conjunto não

vazio de objetos denominados vértices e A é um conjunto de pares não

ordenados de V, chamado arestas.

Dependendo da aplicação, arestas podem ou não ter direção, pode ser

permitido ou não arestas ligarem um vértice a ele próprio e vértices

e/ou arestas podem ter um peso (numérico) associado. Se as arestas

têm uma direção associada (indicada por uma seta na representação

gráfica) temos um grafo direcionado, grafo orientado ou digrafo. Um

grafo com um único vértice e sem arestas é conhecido como o grafo

trivial.

Estruturas que podem ser representadas por grafos estão em toda partee muitos problemas de interesse prático podem ser formulados como

questões sobre certos grafos. Por exemplo, a estrutura de links da Wikipedia pode ser representada por um dígrafo:

os vértices são os artigos da Wikipedia e existe uma aresta do artigo  A para o artigo B se e somente se A contém um

link para  B. Dígrafos são também usados para representar máquinas de estado finito. O desenvolvimento de

algoritmos para manipular grafos é um importante tema da ciência da computação.

HistóricoO artigo de Leonhard Euler, publicado em 1736, sobre o problema das sete pontes de Königsberg, é considerado o

primeiro resultado da teoria dos grafos.[]

É também considerado um dos primeiros resultados topológicos nageometria; isto é, não dependente de quaisquer medidas. Isso ilustra a profunda conexão entre a teoria dos grafos e

topologia.

Definições de grafos e digrafos

Na literatura, as definições básicas da teoria dos grafos variam bastante. Aqui estão as convenções usadas nesta

enciclopédia.

Um grafo direcionado (também chamado digrafo ou quiver) consiste de

• um conjunto V de vértices,

• um conjunto E de arestas e• mapas s, t : E  → V , onde s(e) é a fonte e t (e) é o alvo da aresta direcionada e.

Um grafo não direcionado (ou simplesmente grafo) é dado por

• um conjunto V de vértices,

• um conjunto E de arestas e

• uma função w : E  → P(V ) que associa a cada aresta um subconjunto de dois ou de um elemento de V , interpretado

como os pontos terminais da aresta.

Em um grafo ou digrafo com pesos, uma função adicional E → R associa um valor a cada aresta, o que pode ser

considerado seu "custo"; tais grafos surgem em problemas de rota ótima tais como o problema do caixeiro viajante.

Page 7: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 7/157

Teoria dos grafos 3

Representação gráfica (layout do grafo)

Os grafos são geralmente representados graficamente da seguinte maneira: é desenhado um círculo para cada vértice,

e para cada aresta é desenhado um arco conectando suas extremidades. Se o grafo for direcionado, seu sentido é

indicado na aresta por uma seta.

Note que essa representação gráfica (o layout) não deve ser confundida com o grafo em si (a estrutura abstrata,

não-gráfica). Vários diferentes layouts podem corresponder ao mesmo grafo.[1] O que importa é quais vértices estãoconectados entre si por quantas arestas.

Glossário dos conceitos básicos de teoria dos grafos

Um grafo com 6 vértices e 7 arestas

O grafo de exemplo exibido à direita é um grafo simples com o

conjunto de vértices V = {1, 2, 3, 4, 5, 6} e um conjunto de arestas E =

{ {1,2}, {1,5}, {2,3}, {2,5}, {3,4}, {4,5}, {4,6} } (com o mapeamento

w sendo a identidade).

Uma aresta conecta dois vértices; esses dois vértices são ditos como

incidentes à aresta. A valência (ou grau) de um vértice é o número dearestas incidentes a ele, com loops contados duas vezes. No grafo de

exemplo os vértices 1 e 3 possuem uma valência de 2, os vértices 2, 4 e

5 têm a valência de 3 e o vértice 6 tem a valência de 1. Se  E é finito,

então a valência total dos vértices é o dobro do número de arestas. Em

um dígrafo, distingue-se o grau de saída (o número de arestas saindo de um vértice) e o grau de entrada (o número

de arestas entrando em um vértice). O grau de um vértice é igual à soma dos graus de saída e de entrada.

Dois vértices são considerados adjacentes se uma aresta existe entre eles. No grafo acima, os vértices 1 e 2 são

adjacentes, mas os vértices 2 e 4 não são. O conjunto de vizinhos de um vértice consiste de todos os vértices

adjacentes a ele. No grafo-exemplo, o vértice 1 possui 2 vizinhos: vértice 2 e vértice 5. Para um grafo simples, o

número de vizinhos de um vértice é igual à sua valência.

Na computação, um grafo finito direcionado ou não-direcionado (com, digamos, n vértices) é geralmente

representado por sua matriz de adjacência: uma matriz n-por-n cujo valor na linha i e coluna j fornece o número de

arestas do i-ésimo ao j-ésimo vértices.

Se for possível estabelecer um caminho de qualquer vértice para qualquer outro vértice de um grafo, diz-se que o

grafo é conexo. Se for sempre possível estabelecer um caminho de qualquer vértice para qualquer outro vértice

mesmo depois de remover k -1 vértices, então diz-se que o grafo está k-conexo. Note que um grafo está k -conexo se,

e somente se, contém k caminhos independentes entre qualquer par de vértices. O grafo de exemplo acima é conexo

(e portanto 1-conexo), mas não é 2-conexo.

Em um grafo genérico G, o corte associado a um conjunto  X de vértices é o conjunto de todas as arestas que têmuma ponta em X e outra em V(G) - X , onde V(G) é o conjunto de todos os vértices pertencentes ao grafo G.

• Grafo simples é um grafo não direcionado, sem laços e que existe no máximo uma aresta entre quaisquer dois

vértices (sem arestas paralelas). No grafo de exemplo, (1, 2, 5, 1, 2, 3) é um caminho com comprimento 5, e (5, 2,

1) é um caminho simples de comprimento 2.

• Grafo completo é o grafo simples em que, para cada vértice do grafo, existe uma aresta conectando este vértice a

cada um dos demais. Ou seja, todos os vértices do grafo possuem mesmo grau. O grafo completo de n vértices é

frequentemente denotado por K n. Ele tem n(n-1)/2 arestas (correspondendo a todas as possíveis escolhas de pares

de vértices).

• Grafo nulo é o grafo cujo conjunto de vértices é vazio.• Grafo vazio é o grafo cujo conjunto de arestas é vazio.

Page 8: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 8/157

Teoria dos grafos 4

• Grafo trivial é o grafo que possui apenas um vertice e nenhuma aresta.

• Grafo regular é um grafo em que todos os vértices tem o mesmo grau.

• Multigrafo é um grafo que permite múltiplas arestas ligando os mesmos vértices (arestas paralelas).

• Laço (loop) num grafo ou num digrafo é uma aresta e em E cujas terminações estão no mesmo vértice.

• Pseudografo é um grafo que contém arestas paralelas e laços.

• Ciclo (ou circuito) é um caminho que começa e acaba com o mesmo vértice. Ciclos de comprimento 1 são laços.

No grafo de exemplo, (1, 2, 3, 4, 5, 2, 1) é um ciclo de comprimento 6. Um ciclo simples é um ciclo que tem um

comprimento pelo menos de 3 e no qual o vértice inicial só aparece mais uma vez, como vértice final, e os outros

vértices aparecem só uma vez. No grafo acima, (1, 5, 2, 1) é um ciclo simples. Um grafo chama-se acíclico se não

contém ciclos simples.

• Ponto de articulação ou Vértice de corte é um vértice cuja remoção desliga um grafo. Uma ponte é uma aresta

cuja remoção desliga um grafo. Um componente biconectado é um conjunto máximo de arestas tal que qualquer

par de arestas do conjunto fazem parte de um ciclo simples comum. O contorno de um grafo é o comprimento do

ciclo simples mais curto no grafo. O contorno de um grafo acíclico é, por definição, infinito.

• Árvore é um grafo simples acíclico e conexo. Às vezes, um vértice da árvore é distinto e chamado de raiz.Árvores são comumente usadas como estruturas de dados em informática (veja estrutura de dados em árvore).

• Floresta é um conjunto de árvores; equivalentemente a uma floresta, em algum grafo acíclico.

• Subgrafo de um grafo G é um grafo cujo conjunto dos vértices é um subconjunto do conjunto de vértices G, cujo

conjunto de arestas é um subconjunto do conjunto de arestas de G, e cuja função w é uma restrição da função de

G

• Subgrafo gerador é aquele obtido pela remoção de uma ou mais arestas de um outro grafo, dizemos então que

este novo grafo obtido é gerador do primeiro,

• Subgrafo induzido é obtido pela remoção de vértices e consequente das arestas relacionadas com ele de um outro

grafo, dizemos que este novo grafo é um grafo induzido do original.

• Grafo parcial de um grafo G é um subgrafo com o mesmo conjunto de vértices que G. Uma árvore parcial é um

grafo parcial que é árvore. Todo grafo tem pelo menos uma árvore parcial.

• Clique em um grafo é um subgrafo que também é um grafo completo. No grafo do exemplo acima, os vértices 1,

2 e 5 formam um clique.

• Conjunto independente em um grafo é um conjunto de vértices não adjacentes entre si. No exemplo acima, os

vértices 1, 3 e 6 formam um conjunto independente e 3, 5 e 6 são outro conjunto independente.

• Grafo planar é aquele que pode ser representado em um plano sem qualquer intersecção entre arestas. O grafo do

exemplo é planar; o grafo completo de n vertices, para n> 4, não é planar.

• Caminho é uma sequência de vértices tal que de cada um dos vértices existe uma aresta para o vértice seguinte.Um caminho é chamado simples se nenhum dos vértices no caminho se repete. O comprimento do caminho é o

número de arestas que o caminho usa, contando-se arestas múltiplas múltiplas vezes. O custo de um caminho

num grafo balanceado é a soma dos custos das arestas atravessadas. Dois caminhos são independentes se não

tiverem nenhum vértice em comum, excepto o primeiro e o último.

• Caminho euleriano em um grafo é o caminho que usa cada aresta exatamente uma vez. Se tal caminho existir, o

grafo é chamado traversável. Um ciclo euleriano é um ciclo que usa cada aresta exatamente uma vez.

• Caminho hamiltoniano em um grafo é o caminho que visita cada vertice exatamente uma vez. Um ciclo

hamiltoniano é um ciclo que visita cada vértice uma só vez. O grafo do exemplo contém um caminho

hamiltoniano. Enquanto determinar se um dado grafo contém um caminho ou ciclo euleriano é trivial, o mesmo

problema para caminhos e ciclos hamiltonianos é extremamente árduo.

Page 9: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 9/157

Teoria dos grafos 5

• Lema do aperto de mãos diz que se os convidados de uma festa apertarem as mãos quando se encontrarem pela

primeira vez, o número de convidados que apertam a mão um número ímpar de vezes é par. Também em grafos

não direcionados a soma dos graus de todos os vértices é igual ao dobro do número de arestas.

• Grafo bipartido é o grafo cujos vértices podem ser divididos em dois conjuntos, nos quais não há arestas entre

vértices de um mesmo conjunto. Para um grafo ser bipartido ele não pode conter circuitos de comprimento ímpar.

•• 1. Se um grafo G é bipartido, todo o circuito de G possui comprimento par.• Sejam V1 e V2 os dois conjuntos em que, de acordo com a definição de grafo bipartido, se particiona V(G).

Toda a aresta de G conecta um vértice em V1 com outro em V2. Assim sendo, se X for um vértice de V1,

para “voltar” a esse vértice terá de se ir a V2 e voltar a V1 um número indeterminado de vezes, e de cada

vez serão percorridas duas arestas, uma de um vértice em V1 para um vértice em V2 e outra de um vértice

em V2 para um vértice em V1. Logo, o número de arestas a percorrer será par, ou seja, o comprimento do

circuito é par.

•• 2. Se todo o circuito de um grafo G possui comprimento par, então o grafo é bipartido.

•• Seja G um grafo em que todo o circuito tem comprimento par, e seja X um vértice de G. Denotemos por V1

o conjunto formado por X e por todos os vértices cuja distância a X é par. Seja V2 = V(G)\V1 (isto é, oconjunto formado pelos vértices de G que não pertencem a V1). Pretende mostrar-se que não existe

qualquer aresta que conecte vértices de V1 ou vértices de V2. Suponhamos a existência de tal aresta, isto é,

suponhamos a existência de dois vértices em V1 (ou V2), digamos Xi e Xj, conectados por uma aresta. Ora

existe já um caminho de comprimento par entre Xi e Xj, já que existem caminhos, ambos de comprimento

par (ou ímpar, no caso de Xi e Xj pertencerem a V2), entre Xi e X e entre X e Xj. Se a esse caminho

 juntarmos a aresta {Xi;Xj} obtemos um circuito de comprimento ímpar o que contraria a hipótese de apenas

existirem circuitos de comprimento par.

• Grafo bipartido completo é o grafo bipartido, cujo qualquer vértice do primeiro conjunto é adjacente a todos

vértices do segundo conjunto

• Grafo k-partido ou grafo de k-coloração é um grafo cujos vértices podem ser particionados em k conjuntosdisjuntos, nos quais não há arestas entre vértices de um mesmo conjunto. Um grafo 2-partido é o mesmo que

grafo bipartido.

• Emparelhamento de grafos consiste em partir o grafo em conjuntos de vértices a qual não compartilham

nenhuma aresta entre eles.

• Teorema das quatro cores é baseado no problema das cores necessárias para se colorir um mapa sem que os

países vizinhos compartilhem da mesma cor. Transformando o mapa em um grafo pode-se provar que pode-se

representar qualquer mapa (um grafo planar) com apenas 4 cores (4 partições).

• Percurso árvores:

•• Percorrimento sistemático em todos os vértices e arestas do grafo. Grafo pode ser dirigido ou não.•• O percurso em árvores é o processo de visitar cada nó da árvore exatamente uma vez.

•• O percurso pode ser interpretado como colocar todos os nós em uma linha, não existe uma ordem para ser

seguida.

•• Existem n percursos diferentes, quase todos caóticos.

•• Os básicos são percurso em profundidade e percurso em largura

•• Fila: busca em largura

•• Pilha: busca em profundidade

• Busca em extensão ou largura: (Breadth-First Search ou BFS).

A propriedade especial está no fato de a árvore não possuir ciclos: dados dois vértices quaisquer, existe exatamente 1

caminho entre eles. Um percurso em extensão é visitar cada nó começando do menor nível e move-se para os níveis

mais altos nível após nível, visitando cada nó da esquerda para a direita. Sua implementação é direta quando uma fila

Page 10: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 10/157

Teoria dos grafos 6

é utilizada. Depois que um nó é visitado, seus filhos, se houver algum, são colocados no final da fila e o nó no início

da fila é visitado. Assim, os nós do nível n+1 serão visitados somente depois de ter visitados todos os nós do nível n.

Computa a menor distância para todos os vértices alcançaveis. O sub-grafo contendo os caminhos percorridos é

chamado de breadth-first tree.

• Busca em profundidade (Depth-first search ou DFS).

Um algoritmo de busca em profundidade realiza uma busca não-informada que progride através da expansão doprimeiro nó filho da árvore de busca, e se aprofunda cada vez mais, até que o alvo da busca seja encontrado ou até

que ele se depare com um nó que não possui filhos (nó folha). Então a busca retrocede (backtrack) e começa no

próximo nó. Numa implementação não-recursiva, todos os nós expandidos recentemente são adicionados a uma

pilha, para realizar a exploração. A complexidade espacial de um algoritmo de busca em profundidade é muito

menor que a de um algoritmo de busca em largura. A complexidade temporal de ambos algoritmos são proporcionais

ao número de vértices somados ao número de arestas dos grafos aos quais eles atravessam. Quando ocorrem buscas

em grafos muito grandes, que não podem ser armazenadas completamente na memória, a busca em profundidade não

termina, em casos onde o comprimento de um caminho numa árvore de busca é infinito. O simples artifício de “

lembrar quais nós já foram visitados ” não funciona, porque pode não haver memória suficiente. Isso pode ser

resolvido estabelecendo-se um limite de aumento na profundidade da árvore.

Problemas que envolvem grafos• Coloração de grafos: o Teorema das quatro cores

•• Conjuntos de Grafos

•• Conjunto independente

•• Clique

•• Problemas de roteamento:

•• Sete pontes de Königsberg

•• Árvore de extensão mínima

•• Problema do caminho mínimo

• Problema da inspeção de rotas (também conhecido como o "Problema do carteiro chinês")

•• Problema do caixeiro viajante

• Fluxos de rede:

•• Teorema do mínimo corte-máximo fluxo

•• conjectura da reconstrução

•• Problemas de Isomorfismo (casamento de grafos)

•• Rotulação canônica?

•• Isomorfismo de subgrafos e monomorfismos.

•• Máximo subgrafo comum

Page 11: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 11/157

Teoria dos grafos 7

Algoritmos importantes•• algoritmo de Dijkstra

•• algoritmo de Kruskal

•• algoritmo do vizinho mais próximo

• algoritmo de Prim.

GeneralizaçõesNum hipergrafo uma aresta pode conectar mais que dois vértices.

Um grafo não-direcionado pode ser visto como um complexo simplicial consistindo de símplices de uma dimensão

(as arestas) e símplices de dimensão zero (os vértices). Ou seja, complexos são generalizações de grafos que

permitem símplices de maiores dimensões.

[1] Ver por exemplo, (http:/   /  www. aisee. com/  gallery/  graph23.  htm)

Ligações externas

Em inglês

• Graph theory tutorial (http:/   /  www.utm.  edu/  departments/  math/  graph/  )

• Graph theory algorithm presentation (http:/   /  www. cs.wpi.  edu/  ~dobrush/  cs507/  presentation/  2001/  Project10/ 

ppframe. htm)

• Some graph theory algorithm animations (http:/   /  students. ceid.upatras. gr/  ~papagel/  project/  contents.htm)

•• Step through the algorithm to understand it.

• The compendium of algorithm visualisation sites (http:/   /  www2.hig.  no/  ~algmet/  animate.html)

• A search site for finding algorithm implementations, explanations and animations (http:/   /  www. spectster. com/  )

• Graph Theory Software (http:/   /  graphtheorysoftware. com/  )

Em português

• Material sobre grafos da USP São Carlos (http:/   /  www. icmc. sc. usp. br/  manuals/  sce183/  grafos.html)

• Uma Introdução Sucinta à Teoria dos Grafos (http:/   /  www. ime. usp. br/  ~pf/  teoriadosgrafos/  texto/ 

TeoriaDosGrafos. pdf)

• Material com "Atlas de Grafos" da FINTEC (http:/   /  www. fintec. edu. br/  peter/  relat04/  atlas1/  atlas_index. htm)

• Enumeração de caminhos - Algoritmo Grafos (http:/   /  thiagoprocaci. blogspot. com/  2009/  10/ 

enumeracao-de-caminhos-algoritmo-grafos. html)

Ferramentas de grafos populares• http:/    /  www. graphviz. org/  (em Inglês)

• http:/    /  www. absint. com/  aisee/  index_pt.htm (em Português)

• http:/    /  www. aisee. com (em Inglês)

• http:/    /  www. research. att. com/  sw/  tools/  graphviz/  (em Inglês)

• http:/    /  www. cs. uni-sb. de/  RW/  users/  sander/  html/  gsvcg1.html (em Inglês)

• http:/    /  www. tulip-software. org (em Inglês)

• http:/    /  www. roxgt. org

• http:/    /  planarity.net

Page 12: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 12/157

8

Conceitos Básicos e Definições

Grafo

Um grafo com 6 vértices e 7 arestas.

Em matemática e ciência da computação, grafo é o objeto básico de

estudo da teoria dos grafos. Tipicamente, um grafo é representado

como um conjunto de pontos (vértices) ligados por retas (as arestas).

Dependendo da aplicação, as arestas podem ser direcionadas, e são

representadas por "setas".

Os grafos são muito úteis na representação de problemas da vida real,

em vários campos profissionais. Por exemplo, pode-se representar um

mapa de estradas através dos grafos e usar algoritmos específicos para

determinar o caminho mais curto entre dois pontos, ou o caminho mais

económico. Assim, os grafos podem possuir também pesos (ou custo),

quer nas arestas quer nos vértices, e o custo total em estudo será calculado a partir destes pesos.

Grafos podem ser utilizados também em redes PERT no âmbito do planejamento de projetos. Neste caso, a cada

aresta está associado o custo de execução, e as tarefas precedentes de uma outra serão suas afluentes.

Outro exemplo é o caso das redes de computadores, sendo cada terminal representado por um vértice, o cabo de rede

pelas arestas e o custo associado a latência, por exemplo, ou o número de máquinas que a comunicação atravessa

entre os nós. É nestes princípios que assenta todo o protocolo IP que torna possível a Internet ser uma realidade.

Grafos têm sido utilizados para representar o formalismo das redes complexas, onde o número de nós e de conexões

entre esses nós é muito alto e complexamente estabelecido.

IntroduçãoUma possível definição para grafos: "O grafo propriamente dito é uma representação gráfica das relações existentes

entre elementos de dados. Ele pode ser descrito num espaço euclidiano de n dimensões como sendo um conjunto V

de vértices e um conjunto A de curvas contínuas (arestas)". Podemos avaliar um grafo através de seu tipo,

propriedades e aplicações[1].

Busca em grafoVários problemas representados por um grafo podem ser resolvidos efetuando uma busca nesse grafo. A busca em

grafo consiste em explorar um grafo, de forma que obtenha um processo sistemático de como caminhar por seus

vértices e arestas. Às vezes é preciso visitar todos os vértices de um grafos, às vezes o problema pode ser resolvido

visitando somente um subconjunto dos vértices.

Se o grafo for uma árvore, esta questão se torna simples, podem utilizar as visitas em pré-ordem, ou ordem de nível.

Page 13: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 13/157

Grafo 9

Algoritmos de percursoExistem dois métodos de percurso em grafos: percurso em profundidade (depth-first search  — DFS) e o percurso em

largura (breadth first search  — BFS).

A ideia básica do DFS é buscar "mais a fundo" no grafo quando possível. Assim, a partir de um vértice v, as arestas

ainda não exploradas o são e, ao final, a busca retrocede.

A ideia do BFS é bastante simples: os vértices do grafo são visitados nível a nível, ou seja, todos os vértices a uma

distância k do vértice inicial são visitados antes de qualquer vértice a uma distância k +1 do inicial.

Referências• http:/    /  www. icmc. sc. usp. br/  manuals/  sce183/  gfbus. html

• Cormen. Thomas (2000); Leiserson, Charles.; Rivest, Ronald. Introduction to Algorithmics, McGraw-Hill.

• Algoritmos em Grafos - Paulo Feofiloff [1]

Referências[1] http:/   /  www. ime.  usp.  br/  ~pf/  algoritmos_em_grafos/  aulas/  grafos.  html

Vértice

Um grafo com 6 vértices e 7 arestas onde o

vértice da extrema-direita é um vértice-folha ou

um vértice-pendente.

Em teoria dos grafos, um vértice (plural vértices) ou nodo é a unidade

fundamental da qual os grafos são formados: um grafo não dirigido

consiste de um conjunto de vértices e um conjunto de arestas (pares de

vértices não ordenados), enquanto um digrafo é constituído por um

conjunto de vértices e um conjunto de arcos (pares ordenados devértices). Do ponto de vista da teoria dos grafos, vértices são tratados

como objetos inexpressivos e indivisíveis, embora possam ter uma

estrutura adicional, dependendo da aplicação a partir da qual surge o

grafo; por exemplo, uma rede semântica é um grafo no qual os vértices

representam conceitos ou classes de objetos.

Os dois vértices formando uma aresta são ditos suas extremidades e a

aresta é dita que é incidente para com os vértices.[] Um vértice w é dito ser adjacente a outro vértice v se o grafo

contém uma aresta (v,w).[] A adjacência de um vértice v é um subgrafo induzido do grafo, formado por todos os

vértices adjacentes a v.

O grau de um vértice em um grafo é o número de arestas incidentes a ele. [] Um vértice isolado é um vértice com

grau zero, isto é, um vértice que não é um ponto final de toda a aresta. Um vértice folha (também vértice pendente)

é um vértice de grau um. Em um grafo direcionado, pode-se distinguir o grau de saída (número de arestas

divergentes) do grau de entrada (número de arestas convergentes); uma fonte é um vértice com grau de entrada zero,

enquanto um sumidouro (ou poço) é um vértice com grau de saída nulo[] .

Um vértice de corte é um vértice cuja remoção (juntamente com as arestas a ele conectadas) provoca um redução na

conexidade do grafo;[1] Um separador é uma coleção de vértices cuja remoção desconecta o grafo restante em

pedaços pequenos.[2] Um grafo k-conexo é um gráfico em que a remoção de menos de k vértices sempre deixa o

grafo ainda conectado. Um conjunto independente é um conjunto de vértices tal que não existem dois vértices

adjacentes contido neste conjunto, e uma cobertura de vértices é um conjunto de vértices, que inclui o ponto deextremidade de cada aresta do grafo. O espaço de vértices de um grafo é um espaço vetorial com um conjunto de

Page 14: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 14/157

Vértice 10

vetores de base correspondente aos vértices do gráfico.

Um grafo é vértice-transitivo se ele tiver simetrias que mapeiam qualquer vértice para qualquer outro vértice. No

contexto da enumeração de grafos e isomorfismo de grafos, é importante fazer a distinção entre vértices rotulados e

vértices sem rótulo. Um vértice rotulado é um vértice que está associado com informação extra que possa o

distinguir de outros vértices rotulados; dois grafos podem ser considerados isomórficos somente se a

correspondência entre seus vértices emparelham vértices com rótulos iguais. Um vértice não marcado é aquele quepode ser substituído por qualquer outro vértice com base apenas em suas adjacências no gráfico e não baseado em

quaisquer informações adicionais.

Vértices em grafos são análogos, mas não o mesmo que, vértices de poliedros: o esqueleto de um poliedro forma um

grafo, os vértices do qual são vértices do poliedro, mas os vértices do poliedro tem uma estrutura adicional (sua

localização geométrica) que não se presume estar presente na teoria dos grafos. A Figura de vértice de um vértice de

um poliedro é análoga à vizinhança de um vértice em um grafo.

Em um dígrafo, estrela frontal de um nodo é definida como a suas arestas de saída. Em um grafo com um

conjunto de vértices e um conjunto de arestas , a estrela frontal de pode ser descrita como[3]

[1] Grafos - UFSC (http:/   /  www. inf. ufsc. br/  grafos/  definicoes/  definicao. html)

[2] Algoritmos em Grafos - IME (http:/   /  www. ime. usp. br/  ~pf/  algoritmos_em_grafos/  aulas/  two-flow. html)

• Berge, Claude, Théorie des graphes et ses applications. Collection Universitaire de Mathématiques, II Dunod,

Paris 1958, viii+277 pp. (English edition, Wiley 1961; Methuen & Co, New York 1962; Russian, Moscow 1961;

Spanish, Mexico 1962; Roumanian, Bucharest 1969; Chinese, Shanghai 1963; Second printing of the 1962 first

English edition. Dover, New York 2001)

• Chartrand, Gary. Introductory graph theory. New York: Dover, 1985. ISBN 0-486-24775-9

• Biggs, Norman; Lloyd, E. H.; Wilson, Robin J.. Graph theory, 1736-1936 . Oxford [Oxfordshire]: Clarendon

Press, 1986. ISBN 0-19-853916-9

• Harary, Frank. Graph theory. Reading, Mass.: Addison-Wesley Publishing, 1969. ISBN 0-201-41033-8

• Harary, Frank; Palmer, Edgar M.. Graphical enumeration. [S.l.]: New York, Academic Press, 1973. ISBN

0-12-324245-2

Page 15: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 15/157

Aresta 11

Aresta

Tipos de arestas.

Em teoria dos grafos, uma aresta junto com os vértices ou nodos

formam as unidades fundamentais das quais os grafos são

formados[]: um grafo não dirigido consiste de um conjunto de

vértices e um conjunto de arestas (pares de vértices não

ordenados), enquanto um digrafo é constituído por um conjunto de

vértices e um conjunto de arcos (pares ordenados de vértices). As

arestas são consideradas as uniões entre os vértices. Uma aresta é

dita incidente ao0s elementos de um par de vértices que não são

necessariamente distintos[]. Normalmente as arestas denotam as

relações entre os vértices (vizinhanca, grau, herança, etc..)

Tipos de arestas

Uma aresta pode ser não-direcionada ou direcionada. No segundo

caso, o par de vértices é ordenado e o vértices são chamados

vértice-inícial e vértice-final. Arestas com o mesmo vértice-inicial

e o mesmo vértice final ( u, v ) são ditas paralelas[].

Relação de adjacência

As arestas de um grafo ou digrafo G=(V , E ) induzem uma relação

chamada de relação de adjacência[1]. Portanto um vértice v é

adjacente a um vértice w se e somente se v-w é uma aresta que

pertence ao conjunto E .

Page 16: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 16/157

Aresta múltipla 12

Aresta múltiplaAresta múltipla ou aresta paralela são arestas que possuem os mesmos vértices como extremidade.

Ciclos em um grafoUm ciclo em teoria de grafos é "um passeio de comprimento mínimo três, em que o primeiro e o último vértice

coincidem, mas nenhum outro vértice é repetido" [1]. Um ciclo é uma cadeia simples e fechada[][2]. Um ciclo é uma

cadeia fechada[].

O termo ciclo pode também ser usado para se referir ao grafo que contém os vértices e arestas de um ciclo na

definição acima[1].

Definição matemática

Matematicamente: Seja G um grafo. Um ciclo em G é um caminho{v

1, v

2, . . ., v

k, v

k+1}

sendo

v1

= vk+1

, 3 ≤ k[3]

Clique

Um grafo com 23 cliques de 1-vértice (its vertices), 42 cliques de 2-vértices (suas

arestas), 19 cliques de 3-vértices (os triângulos em azul claro), e 2 cliques de

4-vértices (azul escuro). Seis das arestas e 11 dos triângulos formam cliques

maximais. As duas 4-cliques em azul escuro são tanto máximas quanto maximais,

e o número de clique do grafo é 4.

Na área da matemática da teoria dos grafos,

uma clique em um grafo não-orientado é umsubconjunto de seus vértices tais que cada

dois vértices do subconjunto são conectados

por uma aresta. Uma clique em um grafo G

é um subgrafo de G que é completo. Eles

recebem a notação [1]. O tamanho de

uma clique é igual a cardinalidade de seu

conjunto de vértices. Por exemplo no grafo

G(V,E) sendo V seu conjunto de vértices e

E o de arestas, temos que:

Se V={1,2,3,4,5} e

E={(1,2),(1,3),(1,4),(1,5),(2,3),(2,4),(3,4),(4,5)},

o subgrafo induzido pelos vértices (1,2,3,4)

é uma clique de tamanho 4.

Page 17: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 17/157

Clique 13

Referências

O grau de um grafo

Um grafo com vértices rotulados por grau

Na teoria dos grafos, o grau (ou valência) de um vértice de um grafo éo número de arestas incidentes para com o vértice, com os laços

contados duas vezes. [1][] Ou de forma análoga, o número de vértices

adjacentes a ele.[]O grau de um vértice é denotado O grau

máximo de um grafo G, denotado por Δ(G), e o grau mínimo de um

grafo, denotado por δ(G), são os graus máximos e mínimos de seus

vértices. No grafo à direita, o grau máximo é 3 e o mínimo é 0. Em um

grafo regular, todos os graus são os mesmos, e assim podemos falar de

o grau do gráfico.

Lema do aperto de mãos

A fórmula da soma dos graus afirma que, dado um grafo ,

A fórmula implica que em qualquer grafo, o número de vértices de grau ímpar é par. Esta afirmação (bem como a

fórmula de soma grau) é conhecida como o Lema do aperto de mãos (em inglês, handshaking lemma). O último

nome vem de um problema matemático popular, para provar que, em qualquer grupo de pessoas o número de

pessoas que apertam as mãos com um número ímpar de outras pessoas do grupo é par.

Seqüência de graus

Dois grafos não isomorfos com a mesma seqüência de

graus (3, 2, 2, 2, 2, 1, 1, 1).

A seqüência de grau de um grafo não-direcionado é a seqüência

não crescente dos seus graus de vértices; [2] para o gráfico acima, é

(3, 3, 3, 2, 2, 1, 0). A seqüência de grau é um grafo invariável logo

grafos isomorfos têm a mesma seqüência. No entanto, a seqüência

de grau, em geral, não identifica unicamente um grafo; em alguns

casos, os grafos não isomorfos têm o mesmo grau de seqüência.

O problema da seqüência de graus, é o problema de encontrar

alguns ou todos os grafos com a seqüência de grau sendo umadada seqüência não crescente de números inteiros positivos. Zeros

finais podem ser ignorados, uma vez que são trivialmente

efetuados pela adição de um número adequado de vértices isolados

do grafo.

O problema de encontrar ou estimar o número de grafos com uma

seqüência de determinado grau é um problema do campo da

enumeração de grafos.

Como conseqüência da fórmula da soma de graus, toda a seqüência com uma soma ímpar, como (3, 3, 1), não pode

ser entendida como a seqüência de grau de um grafo. O inverso também é verdadeiro: se uma seqüência tem uma

soma par, é a seqüência de grau de um grafo. A construção de um grafo como este é simples: conecte vértices

ímpares em pares, e preencha com laços (auto-loops).

Page 18: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 18/157

O grau de um grafo 14

Freqüentemente, se deseja procurar por grafos simples, tornando o problema da seqüência de graus mais desafiador.

Obviamente, a seqüência (8, 4) não é a seqüência de grau de um grafo simples, pois teríamos a contradição Δ(G)

> ((número de vértices;− 1). A seqüência (3, 3, 3, 1) também não é a seqüência de grau de um grafo simples, mas

neste caso o motivo é menos óbvio. Encontrar os critérios gerais de seqüências de grau de grafos simples é um

problema clássico; soluções têm sido oferecidas por Erdős e Gallai (1960), V. J. Havel (1955) e S. L. Hakimi (1961)

e S. A. Choudum.

Por exemplo, o Teorema de Erdös-Gallai afirma que a seqüência (d i)i=1,...,n

é uma seqüência de grau de um grafo

simples sse, a soma da seqüência é par e

Havel e Hakimi provaram que (d 1, d 

2, ..., d 

n) é uma seqüência de grau de um grafo simples sse ( d 

2 − 1, d 

3 − 1, ...,

d d 1+1 − 1, d 

d 1+2, d 

d 1+3, ..., d 

n) é. Este fato leva a um algoritmo simples (o algoritmo Havel-Hakimi) para a

realização de um grafo simples, com uma seqüência de determinado grau de realização: Comece com um grafo sem

bordas. Mantenha uma lista de vértices cujo grau de exigência não tenha ainda sido atingido em ordem não-crescente

de exigência de grau residual. Conecte o primeiro vértice com os próximos d 1 vértices na lista, e depois remova-o dalista. Re-ordene a lista e repita até que todas as exigências do grau estejam cumpridas.

Valores especiais

Um grafo não-direcionado com nodos-folha 4, 5,

6, 7, 10, 11, e 12

• Um vértice com grau 0 é chamado de vértice isolado.

• Um vértice com grau 1 é chamado de vértice folha e a aresta

conectada a este vértice é chamada de aresta pendente. No grafo à

direita, {3,5} é uma aresta pendente. Esta terminologia é comum no

estudo de árvores em teoria dos grafos e em especial árvores como

estrutura de dados.

Propriedades globais

• Se cada vértice do grafo tem o mesmo grau k o grafo é chamado de

um grafo k -regular e o próprio grafo é dito ter grau k .

• Um grafo conexo, não-direcionado, tem um caminho euleriano se e somente se ele tem 0 ou 2 vértices de grau

ímpar. Se tem 0 vértices de grau ímpar, o caminho Euleriano é um circuito Euleriano.

• Um grafo direcionado é uma pseudofloresta se e somente se se cada vértice tem um grau de saída no máximo 1.

Um grafo funcional é um caso especial de um pseudofloresta em que cada vértice tem exatamente um grau de

saída 1.• Pelo Teorema de Brooks, qualquer grafo que não seja um clique ou um ciclo ímpar tem um número cromático, de

no máximo Δ, e pelo Teorema de Vizing, um grafo tem um índice cromático de no máximo Δ + 1.

[1][1] .

[2][2] Diestel p.278

Page 19: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 19/157

Grafo bipartido 15

Grafo bipartido

Exemplo de um grafo bipartido

No campo da matemática da teoria dos grafos, um grafo bipartido

ou bigrafo é um grafo cujos vértices podem ser divididos em dois

conjuntos disjuntos U e V tais que toda aresta conecta um vértice

em U  a um vértice em V ;[1] ou seja, U  e V  são conjuntos

independentes. Equivalentemente, um grafo bipartido é um grafo

que não contém qualquer ciclo de comprimento ímpar

Os dois conjuntos U e V podem ser pensados como uma coloração

do grafo com duas cores: se nós colorirmos todos os nodos em U 

de azul, e todos os nodos em V  de verde, cada aresta tem

terminações de cores diferentes, como é exigido no problema de

coloração de grafos. Em contrapartida, tal coloração é impossível

no caso de um grafo que não é bipartido, como um triângulo:

depois de um nó ser colorido de cor azul e outro de verde, oterceiro vértice do triângulo é ligado a vértices de ambas as cores,

impedindo que seja atribuída qualquer cor.

Frequentemente se escreve G = (U , V ,  E ) para denotar um grafo bipartido cuja partição tem as partes U e V . Se

|U | =|V |, ou seja, se os dois subconjuntos tem igual cardinalidade, então G é chamado um grafo bipartido balanceado.

Exemplos•• Qualquer grafo sem ciclos ímpares é bipartido. Como consequência disso:

• Toda árvore é bipartida.

• grafos ciclo com um número par de vértices são bipartidos.• Qualquer grafo planar onde todas as faces em sua representação planar consistem de um número par de arestas

é bipartido. Casos especiais destes são grafos grelha e grafos quadrado, em que cada face interna é composta

por 4 arestas.

Testando biparticidade

Encontrando uma bipartição usando paridade

Se um grafo bipartido é conexo, a sua bipartição pode ser definida pela

paridade das distâncias de qualquer vértice escolhido arbitrariamente v:

um subconjunto consiste dos vértices a uma distância par de v e o outro

subconjunto consiste dos vértices a uma distância ímpar de v.Assim, pode-se testar eficientemente se um grafo é bipartido, usando

esta técnica de paridade de se atribuir vértices para os dois

subconjuntos U e V , separadamente a cada componente conectado do

grafo e, em seguida, examinar cada aresta para verificar se ela tem

terminações designadas para os diferentes subgrupos.

Page 20: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 20/157

Grafo bipartido 16

AplicaçõesGrafos bipartidos são úteis para a modelagem de problemas de acoplamento. Um exemplo de grafo bipartido é um

problema de correspondência de empregos. Suponha que temos um conjunto P de pessoas e um conjunto J de postos

de trabalho, com nem todas as pessoas adequadas para todos os trabalhos. Podemos modelar isto como um grafo

bipartido ( P, J , E ). Se uma pessoa  p x

é adequada para um determinado trabalho  j y

existe uma aresta entre p x

e j y

no

grafo. O teorema do casamento fornece uma caracterização de grafos bipartidos que permitem acoplamentosperfeitos.

Grafos bipartidos são usados extensivamente na moderna teoria dos códigos, especialmente para decodificar palavras

de código recebidas do canal. Grafos Fator e grafos Tanner são exemplos disso.

Em ciência da computação, uma rede de Petri é uma ferramenta de modelagem matemática utilizada na análise e

simulação de sistemas concorrentes. Um sistema é modelado como um grafo bipartido dirigido com dois conjuntos

de nós: Um conjunto de nodos "lugar" que contêm recursos, e um conjunto de nodos "evento" que geram e/ou

consomem recursos. Existem restrições adicionais sobre os nós e arestas que condicionam o comportamento do

sistema. Redes de Petri utilizam as propriedades de grafos bipartidos dirigidos e outras propriedades para permitir

provas matemáticas do comportamento dos sistemas enquanto ao mesmo tempo, permitindo a fácil implementação

de simulações do sistema.

Em geometria projetiva, grafos de Levi são uma forma de grafo bipartido usada para modelar as incidências entre os

pontos e linhas em uma configuração.

Modelagem de multigrafos e hipergrafosGrafos bipartidos podem modelar inteiramente o mais geral multigrafo. Dada um multigrafo M, tome U como o

conjunto de vértices de M e tome V como o conjunto de arestas de M. Então junte-se um elemento de V para

precisamente os dois elementos de U que são as extremidades da aresta em M. Assim, cada multigrafo é descrito

completamente por um grafo bipartido, que é unilateral regular de grau 2, e vice-versa.

Da mesma forma, cada hipergrafo direcionado pode ser representado por um grafo bipartido. Tome U como o

conjunto de vértices no hipergrafo, e V como conjunto de arestas. para cada e , conecte u a v se a

aresta do hipergrafo contém u como entrada, e conecte v a u se v contém u como saída.

Propriedades• Um grafo é bipartido se e somente se ele não contém um ciclo ímpar. Portanto, um grafo bipartido não pode

conter uma clique de tamanho maior ou igual a 3.

• Um grafo é bipartido se e somente se ele é 2-colorível, (i.e. seu número cromático é menor ou igual a 2).

• O tamanho da cobertura de vértices mínima é igual ao tamanho do acoplamento máximo (teorema de König).

• O tamanho do conjunto independente máximo mais o tamanho do acoplamento máximo é igual ao número devértices.

• Para um grafo bipartido conectado o tamanho da cobertura de arestas mínima é igual ao tamanho do conjunto

independente máximo.

•• Para um grafo bipartido conectado o tamanho da cobertura de arestas mínima mais o tamanho da cobertura de

vértices mínima é igual ao número de vértices.

• Todo grafo bipartido é um grafo perfeito.

• O espectro de um grafo é simétrico se e somente se ele é um grafo bipartido.

Page 21: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 21/157

Grafo bipartido 17

Ligações externas• Sistema de informações sobre inclusões de classes de grafos [2]

grafo bipartido [3]

Referências[2] http:/   /  wwwteo. informatik.  uni-rostock.  de/  isgci/  index.  html

[3] http:/   /  wwwteo. informatik.  uni-rostock.  de/  isgci/  classes/  gc_69.  html

Grafo bipartido completo

Grafo bipartidocompleto

Um grafo bipartido completo com m = 5 n = 3

vértices n + m

arestas mn

Cintura 4

Automorfismos 2m!n! se m=n, caso contrário m!n!

Númerocromático

2

Índicecromático

max{m, n}

Notação

No campo da matemática da teoria dos grafos, um grafo bipartido completo ou biclique é um tipo especial de grafo

bipartido onde cada vértice do primeiro conjunto está associado a cada vértice do segundo conjunto.

Definição

Um grafo bipartido completo, G := (V 1 + V 2, E ), é um grafo bipartido tal que para quaisquer dois vértices, v1 ∈

V 1 ev

2 ∈ V 

2, v

1v

2é uma aresta em G. O grafo bipartido completo com partições de tamanho |V 

1|=m e |V 

2|=n, é denotado

Km,n

.

Exemplos

Page 22: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 22/157

Grafo bipartido completo 18

Os grafos estrela S 3, S 

4, S 

5e S 

6.

O grafo de utilidade K 3,3

• Para qualquer k , K 1,k 

é chamado

uma estrela. Todos os grafos

bipartidos completos que são

árvores são estrelas.

• O grafo K 1,3

é chamado uma garra,

e é usado para definir os grafos semgarra.

• O grafo K 3,3

é chamado de grafo de

utilidade. Esta prática vem de um

quebra-cabeça matemático

tradicional, no qual três utilidades

devem ser ligadas a cada três

edifícios; é impossível de resolver

sem cruzamentos, devido à

não-planaridade de K 3,3

.

Propriedades

• Dado um grafo bipartido completo, ele possui dois autovalores simétricos (o índice e o seu simétrico) e os demais

nulos.[1]

• Dado um grafo bipartido, encontrar o seu subgrafo bipartido completo Km,n

com o número máximo de arestas mn

é um problema NP-completo.

• Um grafo planar não pode conter K3,3

como um menor; um grafo periplanar não pode conter K3,2

como um

menor (Estas não são condições suficientes de planaridade e planaridade exterior, mas necessárias).

• Um grafo bipartido completo Kn,n

é um grafo de Moore e uma (n,4)-gaiola.

• Um grafo bipartido completo Kn,n ou Kn,n+1 é um grafo de Turán.• Um grafo bipartido completo K

m,ntem um número de cobertura de vértice do min{m,n} e um número de

cobertura de aresta de max{m,n}.

• Um grafo bipartido completo Km,n

tem um conjunto independente máximo de tamanho max{m,n}.

• A matriz de adjacência de um grafo bipartido completo Km,n

tem autovalores √(nm), −√(nm) e 0; com

multiplicidade 1, 1 e n+m−2 respectivamente.

• A matriz laplaciana de um grafo bipartido completo Km,n

tem autovalores n+m, n, m, e 0; com multiplicidade 1,

m−1, n−1 e 1 respectivamente.

• Um grafo bipartido completo Km,n

tem mn−1 nm−1 árvores de extensão.

• Um grafo bipartido completo Km,n

tem um acoplamento máximo de tamanho min{m,n}.

• Um grafo bipartido completo Kn,n tem uma n-coloração-de-arestas correspondente ao quadrado latino.• Os dois últimos resultados são corolários do teorema do casamento aplicado a um grafo bipartido k -regular.

Referências

Page 23: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 23/157

Grafo caminho 19

Grafo caminho

Grafo caminho

Um grafo caminho em 6 vértices

vértices n

arestas n - 1

Raio ⌊n/2⌋

Diâmetro n - 1

Automorfismos 2

Númerocromático

2

Índice cromático 2

Propriedades Distância-unidadeGrafo bipartidoÁrvore

Notação

No campo da matemática da teoria dos grafos, um grafo caminho ou grafo linear é um exemplo particularmente

simples de uma árvore, ou seja, uma árvore com dois ou mais vértices que não tem ramificações, ou seja, contém

somente vértices de grau 2 e 1.[1] Em particular, ela tem dois vértices terminais (vértices que têm grau 1), enquanto

todos os outros (se houver) têm grau 2.

Ligações externas• Eric W. Weisstein, Path Graph [2] em MathWorld.

Referências[2] http:/   /  mathworld.  wolfram. com/  PathGraph.  html

Page 24: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 24/157

Grafo completo 20

Grafo completoUm grafo completo é um grafo simples em que todo vértice é adjacente a todos os outros vértices. O grafo completo

de n vértices é frequentemente denotado por .

Número de arestas

O grafo tem arestas (correspondendo a todas as possíveis escolhas de pares de vértices).

PlanaridadeO teorema de Kuratowski tem como consequência que um grafo é grafo planar se e somente se .

Grafo cúbico

O grafo de Petersen é um grafo cúbico.

O grafo bipartido completo é um exemplo

de grafo bicúbico

No campo da matemática da teoria dos grafos, um grafo cúbico é um

grafo regular no qual todos os vértices tem grau três[1]. Em outras

palavras um grafo cúbico é um grafo 3-regular. Grafos cúbicos são

também chamados grafos trivalentes.

Um grafo bicúbico é um grafo bipartido cúbico.

Simetria

Em 1932, Ronald M. Foster começou a recolher exemplos de grafossimétricos cúbicos, formando o início do censo de Foster[2]. Muitos

grafos individuais conhecidos são cúbicos e simétricos, incluindo o

grafo de Petersen, o grafo de Nauru, o grafo de Coxeter, o grafo de

Tutte – Coxeter, o grafo de Dyck, o grafo de Foster e o grafo de

Biggs-Smith.

W. T. Tutte classificou os grafos simétricos cúbicos pelo menor

número inteiro s tal que cada dois caminhos orientados de

comprimento s podem ser mapeados entre si por exatamente uma

simetria do grafo. Ele mostrou que s é no máximo 5, e deu exemplos

de grafos com cada valor possível de s de 1 a 5[3].

Grafoos cúbicos semi-simétrico incluem o grafo de Gray ( o menor

grafo cúbico semi-simétrico), o grafo de Ljubljana, e o gaiola-12 de

Tutte.

O grafo de Frucht é o menor grafo cúbico sem qualquer simetria:

possui apenas um único automorfismo de grafos, o automorfismo

identidade.

Page 25: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 25/157

Grafo cúbico 21

O grafo Frucht, o menor grafo cúbico

assimétrico.

Coloração e conjuntos independentes

De acordo com o teorema de Brooks todo grafo cúbico com exceção

do grafo completo  K 4

pode ser colorido com no máximo três cores.

Portanto, todo grafo cúbico diferente de  K 

4

tem um conjunto

independente de pelo menos n /3 vértices, onde n é o número de

vértices no grafo: por exemplo, a maior classe de cor em uma

3-coloração tem pelo menos estes vértices.

De acordo com o teorema de Vizing todo grafo cúbico necessita três ou

quatro cores para uma coloração de arestas. Uma 3-aresta-coloração é

conhecida como uma coloração Tait, e fgorma uma partição das arestas

do grafo em três acoplamentos perfeitos. Pelo teorema de coloração de

linhas de König todo grafo bicúbico tem uma coloração de Tait.

Os grafos cúbicos sem ponte que não tem uma coloração de Tait são conhecidos como snarks. Eles incluem o grafo

de Petersen, grafo de Tietze, os snarks Blanuša, o snark flor, o snark dupla-estrela, o snark Szekeres e o snarkWatkins.

Existe um número infinito de snarks distintos. [4]

Hamiltonicidade

Houve muita pesquisa sobre Hamiltonicidade de grafos cúbicos. Em 1880, P.G. Tait conjecturou que todo grafos

poliédricos cúbicos tem um circuito Hamiltoniano. William Thomas Tutte forneceu um contra-exemplo para a

conjectura de Tait, o grafo de Tutte de 46 vértices, em 1946. Em 1971, Tutte conjecturou que todos os grafos

bicúbicos são hamiltonianos. No entanto, José Horton proporcionou um contra-exemplo com 96 vértices, o grafo de

Horton[5]. Mais tarde Mark Ellingham, construíu mais dois contra-exemplos: os grafos de Ellingham-Horton[6][7]. Aconjectura de Barnette, uma combinação de conjecturas de Tait e Tutte ainda aberta, afirma que todo grafo bicúbico

poliédrico é hamiltoniano. Quando um grafo cúbico é hamiltoniano, a notação LCF permite que ele seja representada

de forma concisa.

Se um grafo cúbico é escolhido aleatoriamente entre todos os grafos cúbicos de n-vértices, então é bem provável que

seja Hamiltoniano. a proporção de grafos cúbicos de n-vértices que são Hamiltonianos tende a um no limite a medida

que n vai para o infinito[8].

David Eppstein conjecturou que todo grafo cúbico de n-vértices tem no máximo 2n /3 (aproximadamente 1260n)

ciclos hamiltonianos distintos, e exemplificou com grafos cúbicos com esta quantidade de ciclos [9]. O melhor limite

superior que foi até agora comprovado no número de ciclos hamiltonianos distintos é 1,276n

.[10]

Page 26: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 26/157

Grafo cúbico 22

Outras propriedadesO comprimento do caminho de quaisquer grafo cúbico de n-vértices é no máximo n /6. No entanto, o limite inferior

melhor conhecido no comprimento do caminho de grafos cúbicos é menor, 0.082n.[11]

Se segue do lema do aperto de mãos, provado por Leonhard Euler em 1736 como parte do primeiro trabalho sobre

teoria dos grafos, que todo grafo cúbico tem um número par de vértices.

Algoritmos e complexidadeVários pesquisadores têm estudado a complexidade de tempo exponencial de algoritmos restritos a grafos cúbicos.

Por exemplo, através da aplicação de programação dinâmica para a decomposição do caminho do grafo, Fomin e

Høie mostraram como encontrar os seus conjuntos independentes máximos em tempo O(nn /6 + o(n)).[11]

História• 1880: Peter Guthrie Tait conjeturou que cada grafo sem pontes cúbico planar tem um circuito hamiltoniano.

William Thomas Tutte encontrou um contra-exemplo: un grafo de 46 vértices (agora com o seu nome) em 1946.

• 1934: Ronald M. Foster começou a colecionar exemplos de grafos simétricos cúbicos, com o que iria iniciar o

Censo de Foster .[12]

• 1971: William Tutte conjetura que todos os grafos bicúbicos são ciclos hamiltonianos. Entretanto, Horton

proporciona un grafo de contra-exemplo, com 96-vértices.

• 2003: Petr Hliněný mostra que o problema de encontrar o número de cruzamento (o número mínimo de arestas

que cruzam um dado grafo) de um grafo cúbico é NP-hard, apesar de terem um grau pequeno. Existem, não

obstante, algoritmos de aproximacão práticos para encontrar o número de cruzamento de grafos cúbicos[13].

[2] Foster, R. M. "Geometrical Circuits of Electrical Networks." Transactions of the American Institute of Electrical Engineers 51, 309-317,

1932

[3][3] .[4][4] .

[5][5] Bondy, J. A. and Murty, U. S. R. Graph Theory with Applications. New York: North Holland, p. 240, 1976.

[6][6] Ellingham, M. N. "Non-Hamiltonian 3-Connected Cubic Partite Graphs."Research Report No. 28, Dept. of Math., Univ. Melbourne,

Melbourne, 1981.

[7][7] Ellingham, M. N. and Horton, J. D. "Non-Hamiltonian 3-Connected Cubic Bipartite Graphs." J. Combin. Th. Ser. B 34, 350-353, 1983.

[8][8] .

[10][10] .

[11][11] .

Page 27: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 27/157

Grafo Estrela 23

Grafo Estrela

Estrela

A estrela S 7 .

vértices k+1

arestas k 

Diâmetro2

Cintura ∞

Númerocromático

2

Índicecromático

Propriedades aresta-transitivoÁrvoreDistância-unidadeBipartido

Notação S k 

Em teoria dos grafos, uma estrela S k

é o grafo bipartido completo  K 1,k 

, uma árvore com um nó interno e k folhas.

Uma estrela com 3 arestas é chamada uma garra[1].

A estrela S k

é aresta-elegante quando k é par e não quando k é ímpar. Ela é aresta-transitiva, unidade-distância e têm

diâmtero 2, cintura ∞, índice cromático k e número cromático 2.

Estrelas também podem ser descritas como os únicos grafos conectados em que no máximo um vértice tem grau

maior que um.

Relação com outras famílias de grafosGarras são notáveis na definição de grafos sem garra, os grafos que não tem qualquer garra como subgrafo

induzido[2][3].

Uma estrela é um tipo especial de árvore. Como acontece com qualquer árvore, as estrelas podem ser codificados por

uma sequência Prüfer; A sequência Prüfer para uma estrela K 1,k 

consiste de k  − 1 cópias do vértice central[4]. Uma

árvore pode ser vista como um conjunto de estrelas (pares ou ímpares) ligadas pelos pontos centrais[5].

Diversos grafos invariantes são definidos em termos de estrelas. Arboricidade de estrela é o menor número de

florestas que um grafo pode ser particionado em tal modo que cada árvore em cada floresta é uma estrela[6], e o

número cromático de estrela de um grafo é o menor número de cores necessário para colorir seus vértices de tal

forma que cada duas classes de coloração, juntas, formam um subgrafo em que todos os componentes conectados são

estrelas[7]

. Os grafos de comprimento de ramo 1 são exatamente os grafos em que cada componente conectado é umaestrela[8].

Page 28: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 28/157

Grafo Estrela 24

Os grafos estrela S 3, S 

4, S 

5e S 

6.

Outras aplicaçõesO conjunto de distâncias entre os vértices de uma garra fornece um exemplo de um espaço métrico finito, que não

pode ser incorporado isometricamente em um espaço euclideano de qualquer dimensão[9].

A rede em estrela, uma rede de computadores modelado em um grafo de estrela, é importante em computaçãodistribuída.

[2][2] .

[3][3] .

Grafo nulo

Grafo

nulovértices 0

arestas 0

Automorfismos1

No campo da matemática da teoria dos grafos, o grafo nulo ou o grafo vazio ou é o grafo sem nenhum vértice e

(portanto) sem arestas, ou qualquer grafo sem arestas.

O grafo nulo (no sentido original) é o objeto inicial na categoria de grafos, de acordo com algumas definições de

categoria de grafos. Não tendo nenhum vértice, o grafo nulo, portanto, também não tem componentes ligados.

Assim, embora o grafo nulo seja uma floresta (um grafo sem ciclos), não é uma árvore, uma vez que as árvores têmcomponente ligados.

Grafo sem arestas

Page 29: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 29/157

Grafo nulo 25

Grafo semarestas

vértices n

arestas 0

Automorfismos n!

Númerocromático

1

Propriedades IntegralSimétrico

Notação

Alguns autores entendem que um termo melhor para o último sentido (V , { }) para qualquer conjunto V é o mais

explícito grafo sem arestas. Assim se reserva o termo grafo nulo para o primeiro sentido: um grafo sem quaisquer

vértices. Outros, ainda, fazem essa distinção, aplicando o rótulo vazio para esses grafos sem arestas.

O grafo sem arestas de n-vértices é o grafo complementar para o grafo completo , e por isso é comumente

denotado como .

Mesmo que esta definição forneca uma base sólida para a definição de certas operações sobre grafos (por exemplo:

decomposição) considerando-se grafos como conjuntos de vértices e arestas (V , E ), esta definição levanta um

problema na singularidade do elemento nulo dos grafos.

Grafo orientado

Um grafo orientado (direcionado).

Um grafo orientado,[1] grafo dirigido,[2] grafo direcionado[3] ou digrafo é umpar (algumas vezes )(edge) de:[][][4]

• Um conjunto V , cujos elementos são chamados vértices ou nodos,

• um conjunto A de pares ordenados de vértices, chamados arcos, arestas

direcionadas, ou setas (e às vezes simplesmente arestas com o conjunto

correspondente chamado E ao invés de A).

Ele difere de um grafo não-direcionado comum, em que o último é definido em

termos de pares não ordenados de vértices, que são normalmente chamados arestas.

Por exemplo, ser possível ir de um nó A para um nó B, mas não o contrário através desse arco.Às vezes, um digrafo é chamado de um digrafo simples para distinguí-lo de um multigrafo direcionado (ou

multidigrafo ou ainda quiver), em que os arcos constituem um multiconjunto, ao invés de um conjunto, de pares

ordenados de vértices. Além disso, em um digrafo simples laços não são permitidos. Por outro lado, alguns textos

permitem laços, arcos múltiplos, ou ambos em um digrafo.

Page 30: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 30/157

Grafo orientado 26

Terminologia básica

Um arco é considerado ser direcionado de  para ; é chamado de cabeça e é chamado de

cauda do arco; é dito ser um sucessor direto de , e é dito ser um predecessor direto de . Se um

caminho composto por um ou mais arcos sucessivos leva de para , então é dito ser um successor de , e

é dito ser um predecessor de . O arco é chamado de arco invertido.

Um grafo direcionado G é chamado de simétrico se, para cada arco, que pertence à G, o arco invertidocorrespondente também pertence à G. Um grafo dirigido simétrico sem laços é equivalente a um grafo não orientado

com os pares de arcos invertidos substituído por arestas, assim o número de arestas é igual ao número de arcos pela

metade.

A orientação de um grafo grafo não-direcionado simples é obtida através da atribuição de um sentido para cada

lado. Qualquer grafo direcionado construído desta forma é chamado de um grafo orientado. A distinção entre um

grafo direcionado simples e um grafo orientado é que se e são vértices, um grafo direcionado simples permite

tanto quanto como arestas, enquanto apenas uma é permitida em um grafo orientado.[]

Um digrafo ponderado é um digrafo com pesos atribuídos a seus arcos, à semelhança de um grafo ponderado.

A matriz de adjacência de um digrafo (com laços e arcos múltiplos) é uma matriz inteira com linhas e colunascorrespondendo aos nodos do digrafo, onde uma entrada não-diagonal é o número de arcos do nó i para o nó j, e

a entrada diagonal é o número de laços no nó i. A matriz de adjacência de um digrafo é única até as permutações

de linhas e colunas.

Outra representação de matriz para um dígrafo é sua matriz de incidência.

Veja glossário para mais definições.

Graus de saída e graus de entrada

Um digrafo com vértices rotulados (saída ou

entrada)

Para um nodo, o número de pontos de extremidade adjacente à cabeça

de um nó é chamado de grau de entrada do nodo e o número depontos de extremidade da cauda é o seu grau de saída.

O grau de entrada é denotado e o grau de saída como

. Um vértice com é chamado de fonte,

uma vez que é a origem de cada uma das suas arestas incidentes. Da

mesma forma, um vértice com é chamado de

sumidouro (ou poço).A fórmula da soma dos graus afirma que, para um grafo direcionado

Se para cada nodo, v ∈ V , , o grafo é chamado de digrafo balanceado.

Page 31: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 31/157

Grafo orientado 27

Conectividade de digrafosUm digrafo G é chamado de fracamente conectado (ou apenas conectado[]p. 19) se o grafo subjacente

não-direcionado obtido através da substituição de todas as arestas de G por arestas não direcionadas é um grafo

conexo. Um digrafo é fortemente conectado ou forte se ele contém um caminho orientado de u a v e um caminho

orientado de v a u para cada par de vértices u,v. Os componentes fortes são os subgrafos máximo fortemente

conectados.

Classes de digrafos

Um grafo direcionado acíclico simples

Um digrafo acíclico é um grafo direcionado sem ciclos direcionados.

Uma árvore enraizada naturalmente se define como um digrafo acíclico, se

todas as arestas da árvore subjacentes são dirigidas para longe da raiz.

um torneio com 4 vertices

Um torneio é um grafo orientado obtido ao se escolher uma direção para cada

aresta em um grafo completo não-direcionado.

Na teoria dos grupos de Lie, um quiver Q é um grafo direcionado servindo

como o domínio do e, portanto, caracterizando a forma de, uma

representação V definida como um functor, mais especificamente um objeto

da categoria functor FinVct K 

F(Q)

onde  F (Q) é a categoria livre em Qconstituída por caminhos em Q e FinVct

 K é a categoria de espaços vetoriais

de dimensão finita sobre um campo K . Representações de um quiver rótulam

seus vértices com espaços vetoriais e suas arestas (e, portanto, caminhos) de

modo compatível com transformações lineares entre eles, e transformam

através das transformações naturais.

Referências[1][1] .

[2][2] .[4][4] .

Page 32: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 32/157

Grafo simples 28

Grafo simplesEm teoria dos grafos, um grafo diz-se simples se entre cada par de vértices distintos existir no máximo uma aresta e

se, além disso, não contiver lacetes nem arestas paralelas, ou seja existir uma aresta que conecta um vertice a ele

mesmo.

Em grande parte dos textos o adjectivo simples (ou regular ) é omitido estando, no entanto, subentendido. Um grafo

que não é simples, diz-se um multigrafo.

Grafo valoradoUm grafo valorado ou grafo ponderado[1] é um grafo que possui funções relacionando o conjunto de vértices ou o

conjunto de arestas a conjunto de números.[2][]

O significado das funções depende do problema. Na maioria das aplicações de grafos existem dados quantitativos

associados a pontos(vértices) ou ligações(arestas) relacionados ao problema[] . Na maioria das aplicações de grafos a

problemas de engenharia, é necessário considerar-se grandezas tais como distâncias, altitudes, capacidades, fluxos,

etc., associadas a localidades, estradas, etc. que definem os vértices e os arcos (ou arestas) do grafo.

Em muitos problemas, no entanto, interessa apenas o inter-relacionamento dos vértices - e não se definem funções,

ou se pode considerar que elas são constantes. Diz-se então que o grafo é um grafo não-valorado.

RepresentaçãoEm um grafo valorado se pode usar as representações usuais para grafos. A matriz de adjacência é comumente

conhecida como matriz de valores das ligações ou simplesmente matriz de valores.[] Na lista de adjacência cada

linha vem acompanhada de seus valores respectivos[] . A figura a seguir ilustra um exemplo:

Grafo valorado Matriz de valores

Page 33: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 33/157

Homomorfismo de grafos 29

Homomorfismo de grafosNo campo da matemática da teoria dos grafos um homomorfismo de grafos é um mapeamento entre dois grafos que

respeita suas estruturas. De forma mais concreta ele mapeia vértices adjacentes a vértices adjacentes.

DefiniçãoUm homomorfismo de grafos de um grafo para um grafo , denotado por

, é um mapeamento do conjunto de vértices de para o conjunto de vértices de

tal que sempre que .A definição acima é estendida para dígrafos (grafos com arestas dirigidas). Então, para um homomorfismo

, é um arco (aresta dirigida) de se é um arco de .

Se há um homomorfismo nós escreveremos , e caso contrário. Se

, é dito ser homomórfico a ou -colorável.

A composição de homomorfismos é também um homomorfismo. Se o homomorfismo é uma

bijeção cuja função inversa é também um homomorfismo de grafos, então é um isomorfismo de grafo.

Determinar se há ou não um isomorfismo entre dois grafos é um importante problema em complexidade

computacional; veja o problema do isomorfismo de subgrafos.Dois grafos e são homomorficamente equivalentes se e .

O resultado da retração de um grafo é um subgrafo de tal que existe um homomorfismo

, chamado retração com para todo vértice de . Um núcleo é um grafo que não se retrai a um

subgrafo próprio. Qualquer grafo é homomorficamente equivalente a um único núcleo.

GeneralizaçãoTome a seguinte definição de grafo:

Um grafo é uma estrutura

em que é o conjunto de nós do grafo, , (uma função parcial) e tais

que:

se ; ou , caso contrário.

O conceito de homomorfismo de grafos pode ser generalizado (usando essa estrutura para grafos) de funções (entre

nós dos grafos) para relações:

Sejam grafos. Uma bissimulação entre e é uma relação tal que:•

Se há tal relação, então e são chamados bissimilares (notação ). Se é de fato uma função

(caso em que chamaremos uma bissimulação funcional) temos um homomorfismo de grafo, tal que inclui

, sendo uma ordenação de homomorfismos definida como:

se , para algum homomorfismo

Os conceitos de bissimulação e ordenação de homomorfismos são bastante importantes na demonstração de

resultados sobre a confluência de sistemas de reescrita de grafos.

Page 34: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 34/157

Homomorfismo de grafos 30

Observações• Em termos de coloração de grafos, k -colorações de são exatamente homomorfismos , em

que é o grafo completo com nós. Como conseqüência se , o número cromático (menor

número de cores necessário para colorir um grafo) de é no máximo o de : (onde

representa o número cromático do grafo ).•• O homomorfismo de grafos preserva a conectividade.•• O produto tensorial de grafos é o produto categorial para a categoria dos grafos e dos homomorfismos de grafos.

• O problema de decisão associado, isto é, decidir se existe ou não um homomorfismo de um grafo para outro, é

NP-completo.

Referências• Hell, Pavol; Jaroslav Nešetřil. Graphs and Homomorphisms (Oxford Lecture Series in Mathematics and Its

 Applications). [S.l.]: Oxford University Press, 2004. ISBN 0-19-852817-5

•• Term Rewriting Systems, Terese, Cambridge Tracts in Theoretical Computer Science, 2003.

Veja também•• Reescrita de Grafos

•• Teoria das categorias

Isomorfismo de grafosEm teoria dos grafos, um isomorfismo dos grafos G e H é uma bijeção entre os conjuntos de vértices de G e H 

de tal forma que quaisquer dois vértices u e v de G são adjacentes em G se e somente se ƒ(u) e ƒ(v) são adjacentes em

 H . Este tipo de bijeção é comumente chamado de "bijeção com preservação de arestas", de acordo com a noção geral

de isomorfismo sendo uma bijeção de preservação-de-estrutura.

Na definição acima, os grafos são entendidos como grafos grafos não dirigidos, não-rotulados e não ponderados. No

entanto, a noção de isomorfismo pode ser aplicada a todas as outras variantes da noção de grafo, somando os

requisitos necessários para preservar os elementos adicionais correspondentes da estrutura: as direções do arco, os

pesos das arestas, etc, com a seguinte exceção. Quando se fala em rótulo com rótulos exclusivos, geralmente tirados

do intervalo inteiro 1 ,...,n, onde n é o número dos vértices do grafo, dois grafos rotulados são ditos isomórficos se os

grafos subjacentes correspondentes não rotulados são isomórficos.

Se um isomorfismo existe entre dois grafos, então os grafos são chamados de isomorfos e nós denotamos por. No caso, quando a bijeção é um mapeamento de um grafo em si mesmo, ou seja, quando G e H são um e

o mesmo grafo, a bijeção é chamada de automorfismo de G.

O isomorfismo de grafos é uma relação de equivalência em grafos e, como tal, particiona as classes de todos os

grafos em classes de equivalência. Um conjunto de grafos isomorfos entre si é chamado de classe de isomorfismo

de grafos.

Page 35: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 35/157

Isomorfismo de grafos 31

ExemploOs dois grafos abaixo são isomorfos, apesar de suas representações diferentes.

Grafo G Grafo H Um

isomorfismo

entre G e H

 ƒ(a) = 1

 ƒ(b) = 6

 ƒ(c) = 8

 ƒ(d ) = 3

 ƒ(g) = 5

 ƒ(h) = 2

 ƒ(i) = 4

 ƒ( j) = 7

MotivaçãoA noção formal de "isomorfismo", por exemplo, de "isomorfismo gráfico", captura a noção informal de que alguns

objetos têm "a mesma estrutura", se alguém ignora distinções individuais dos componentes de objetos "atômicos" em

questão, consulte o exemplo acima. Sempre que a individualidade dos componentes "atômicos" (vértices e arestas,

para grafos) é importante para a correta representação do que é modelado por grafos, o modelo é refinado pela

imposição de restrições adicionais sobre a estrutura, e outros objetos matemáticos são utilizados: digrafos, grafos

rotulados, grafos coloridos, árvores enraizadas e assim por diante. A relação de isomorfismo pode também ser

definida para todas essas generalizações de grafos: o isomorfismo bijeção deve preservar os elementos da estrutura

que define o tipo de objeto em questão: arcos, rótulos, cores de vértices/arestas, a raiz da árvore de raízes, etc.

A noção de "isomorfismo de grafos" permite-nos distinguir as propriedades de grafos inerentes às estruturas dospróprios grafos das propriedades associadas com as representações do grafo: desenho dos grafos, estruturas de dados

para grafos, rótulos de grafos, etc. Por exemplo, se um grafo tem exatamente um ciclo, em seguida, todos os grafos

da sua classe de isomorfismo também têm exatamente um ciclo. Por outro lado, no caso comum quando os vértices

de um grafo são (representados por) inteiros 1, 2, ... N , então a expressão

pode ser diferente para dois grafos isomorfos.

Reconhecimento de isomorfismo de grafosTeorema de Whitney

A exceção do teorema de Whitney: estes dois grafos

não são isomórficos, mas tem grafos de linha

isomórfica.

O teorema de isomorfismo de grafos de Whitney,[1] demonstrado

por H. Whitney, afirma que dois grafos conexos são isomorfos se e

somente se o seu grafos de linha são isomórficos, com uma única

exceção: K 3, o grafo completo em três vértices, e o grafo bipartido

completo K 1,3

, que não são isomórficos, mas ambos têm  K 3

como

seu grafo de linha. O teorema de grafos de Whitney pode ser

estendido para hipergrafos.[2]

Page 36: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 36/157

Isomorfismo de grafos 32

abordagem algorítmica

Enquanto isomorfismos de grafos podem ser estudados de forma clássica da Matemática, como exemplificado pelo

teorema de Whitney, é reconhecido que é um problema a ser enfrentado com uma abordagem algorítmica. O

problema computacional de determinar se dois grafos finitos são isomorfos é chamado o problema do isomorfismo

de grafos.

Suas aplicações práticas incluem principalmente quimioinformática, matemática química (identificação decompostos químicos), e automação de projeto eletrônico (verificação da equivalência das diferentes representações

do desenho de um Circuito eletrônico

Curiosamente, é também um dos poucos problemas em teoria computacional da complexidade pertencente à classe

NP, mas não se sabe se pertence a nenhum de seus conhecidos subconjuntos (e, se P ≠ NP, disjuntos):P e

NP-completo. É um de apenas dois, dos 12 totais, problemas listados em Garey e Johnson (1979) cuja complexidade

está por se resolver.[3] Ou seja, eles não foram provados ser incluídos, nem excluídos, das classes P ou NP-completo.

Sua generalização, o problema do isomorfismo de subgrafos, é sabido ser NP-Completo.

As principais áreas de pesquisa para o problema é o projeto de algoritmos rápidos, tanto para o problema geral

quanto para classes especiais de grafos, e investigações teóricas de sua complexidade computacional.

Referências[1] H. Whitney, "Congruent graphs and the connectivity of graphs", Am. J. Math., 54(1932) pp. 160-168.

[2][2] Dirk L. Vertigan, Geoffrey P. Whittle: A 2-Isomorphism Theorem for Hypergraphs. J. Comb. Theory, Ser. B 71(2): 215-230. 1997.

[3] The latest one resolved was minimum-weight triangulation, proved to be NP-complete in 2008. .

Laço

Um grafo com um laço no vértice 1

Em teoria dos grafos, um laço ou auto-loop (em inglês: loop, self-loopou buckle) é uma aresta que conecta um vértice a ele mesmo. Um

grafo simples, não contém nenhum laço.

Dependendo do contexto, um grafo ou um multigrafo pode ser definido

de forma a permitir ou proibir a presença de laços (muitas vezes em

combinação com a permissão ou proibição do uso de arestas múltiplas

entre os mesmos vértices:

• Onde os grafos são definidos de modo a permitir laços e arestas

múltiplas, um grafo sem laços é muitas vezes chamado de

multigrafo.

[][][]

• Onde os grafos são definidos de modo a não permitir laços e arestas

múltiplas, um multigrafo ou pseudografo é muitas vezes definido

como um grafo que pode ter laços e arestas múltiplas.[][]

Page 37: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 37/157

Laço 33

GrauPara um grafo não direcionado, o grau de um vértice é igual ao número de vértices adjacentes.

Um caso especial é um laço, que acrescenta dois para o grau. Isso pode ser entendido se deixando cada conexão da

contagem de arestas do laço como seu próprio vértice adjacente. Em outras palavras, um vértice com um laço "vê" a

si mesmo como um vértice adjacente de ambas as extremidades da aresta, assim, se soma dois e não um, para o grau.

Para um grafo direcionado, um laço soma um ao grau de entrada e um ao grau de saída

Ligações externas• Grafos - Definições (UFSC) [1]

Referências[1] http:/   /  www. inf.  ufsc. br/  grafos/  definicoes/  definicao.  html

Multigrafo

Multigrafo com laços (azul) e arestas múltiplas

(vermelho)

Multigrafo ou pseudografo é um grafo não dirigido que pode

possuir arestas múltiplas (ou paralelas), ou seja, arestas com

mesmos nós finais. Assim, dois vértices podem estar conectados

por mais de uma aresta. Formalmente, um multigrafo G é um par

ordenado , sendo

• um conjunto de vértices ou nós,

• um multiconjunto de pares não-ordenados de vértices,

chamado arestas ou linhas.Alguns autores também consideram multigrafos aqueles que têm

laços, isto é, uma aresta que conecta um vértice a ele mesmo [1];

outros chamam estes de pseudografos, reservando o termo

multigrafo para os casos em que não há laços[2].

Multigrafos podem ser usados, por exemplo, pra modelar as

possíveis conexões de vôo oferecidas por uma linha aérea. Nesse

caso o pseudografo seria um grafo dirigido com pares de arestas

paralelas dirigidas conectando cidades para mostrar que é possível voar para e a partir destas locações.

Um multidígrafo é um dígrafo (grafo com arestas dirigidas) em que pode-se ter arestas múltiplas. Um multidígrafoé um par ordenado , sendo

• um conjunto de vértices ou nós,

• um multiconjunto de pares ordenados de vértices, chamado arestas dirigidas, arcos ou flechas.

Um multigrafo misto pode ser definido do mesmo jeito que um grafo misto (com arestas que

podem ser dirigidas ou não).

Page 38: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 38/157

Multigrafo 34

EtiquetasMultigrafos e multidígrafos podem suportar a noção de grafos etiquetados, de modo similar. Contudo não há

consenso na terminologia nesse caso.

As definições de multigrafos e multidígrafos etiquetados são similares, e definiremos apenas o último:

Um multidígrafo etiquetado é um grafo etiquetado com arcos etiquetados.

Formalmente: Um multidígrafo etiquetado G é um multigrafo com nós etiquetados e arcos. Formalmente é uma

8-tupla , em que:

• é um conjunto de nós e é um multiconjunto de arcos.

• e são alfabetos finitos de nós e etiquetas de arcos disponíveis.

• e são duas funções indicando o nó de origem e o de destino de um arco.

• e são duas funções descrevendo a etiquetagem dos nós e arestas.

Notas

[1][1] Para exemplos, veja. Bollobas, p. 7 and Diestel, p. 25.[2] Graphs, Colourings and the Four-Colour Theorem, by Robert A. Wilson, 2002, ISBN 0198510624, p. 6 (http:/   /  books.  google.  com/ 

books?id=iq0sSnIxJioC& pg=PA6& dq=pseudograph&  lr=& ei=R-jrSKWoCJGgswOv0eiXBw&

sig=ACfU3U20xuoH7jZDq-XGqSnfsmC0oE8KjQ)

Referências• http:/    /  www. utm. edu/  departments/  math/  graph/  glossary. html#multigraph

• Diestel, Reinhard; Graph Theory, Springer; 2nd edition (February 18, 2000). ISBN 0-387-98976-5.

Pseudografo

Multigrafo com laços (azul) e arestas múltiplas

(vermelho)

Multigrafo ou pseudografo é um grafo não dirigido que pode

possuir arestas múltiplas (ou paralelas), ou seja, arestas com

mesmos nós finais. Assim, dois vértices podem estar conectados

por mais de uma aresta. Formalmente, um multigrafo G é um par

ordenado , sendo

• um conjunto de vértices ou nós,

• um multiconjunto de pares não-ordenados de vértices,

chamado arestas ou linhas.

Alguns autores também consideram multigrafos aqueles que têm

laços, isto é, uma aresta que conecta um vértice a ele mesmo [1];

outros chamam estes de pseudografos, reservando o termo

multigrafo para os casos em que não há laços[2].

Multigrafos podem ser usados, por exemplo, pra modelar as

possíveis conexões de vôo oferecidas por uma linha aérea. Nesse

caso o pseudografo seria um grafo dirigido com pares de arestas

paralelas dirigidas conectando cidades para mostrar que é possível voar para e a partir destas locações.

Um multidígrafo é um dígrafo (grafo com arestas dirigidas) em que pode-se ter arestas múltiplas. Um multidígrafo

é um par ordenado , sendo

• um conjunto de vértices ou nós,

Page 39: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 39/157

Pseudografo 35

• um multiconjunto de pares ordenados de vértices, chamado arestas dirigidas, arcos ou flechas.

Um multigrafo misto pode ser definido do mesmo jeito que um grafo misto (com arestas que

podem ser dirigidas ou não).

Etiquetas

Multigrafos e multidígrafos podem suportar a noção de grafos etiquetados, de modo similar. Contudo não há

consenso na terminologia nesse caso.

As definições de multigrafos e multidígrafos etiquetados são similares, e definiremos apenas o último:

Um multidígrafo etiquetado é um grafo etiquetado com arcos etiquetados.

Formalmente: Um multidígrafo etiquetado G é um multigrafo com nós etiquetados e arcos. Formalmente é uma

8-tupla , em que:

• é um conjunto de nós e é um multiconjunto de arcos.

• e são alfabetos finitos de nós e etiquetas de arcos disponíveis.

• e são duas funções indicando o nó de origem e o de destino de um arco.

• e são duas funções descrevendo a etiquetagem dos nós e arestas.

Notas[1][1] Para exemplos, veja. Bollobas, p. 7 and Diestel, p. 25.

[2] Graphs, Colourings and the Four-Colour Theorem, by Robert A. Wilson, 2002, ISBN 0198510624, p. 6 (http:/   /  books.  google.  com/ 

books?id=iq0sSnIxJioC& pg=PA6& dq=pseudograph&  lr=& ei=R-jrSKWoCJGgswOv0eiXBw&

sig=ACfU3U20xuoH7jZDq-XGqSnfsmC0oE8KjQ)

Referências

• http:/    /  www. utm. edu/  departments/  math/  graph/  glossary. html#multigraph• Diestel, Reinhard; Graph Theory, Springer; 2nd edition (February 18, 2000). ISBN 0-387-98976-5.

Page 40: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 40/157

Quiver 36

Quiver

Um digrafo.

Em matemática, um quiver (ou digrafo) é um grafo direcionado onde laços e

múltiplas setas entre dois vértices são permitidos. Eles são comumente utilizados

em teoria da representação: uma representação, V, de um quiver atribui um espaço

vetorial V(x) para cada vértice x do quiver e um mapa linear V(a) para cada seta a.

Representação de um quiver, consistindo de dois espaços vetoriais (V1, V2) e um morfismo f 

Se K é um corpo e Γ é um quiver, então o quiver algébrico ou trilha algébrica  K Γ

é definido como se segue. Uma trilha em Q é uma sequência de setas a_1 a_2 a_3

... a_n tal que a cabeça de a_{i+1} = cauda de a_i, usando a convenção de

concatenar trilhas da direita para esquerda. Então, a trilha algébrica é um espaço vetorial que tem todas as trilhas do

quiver como base e a multiplicação dada pela concatenação de trilhas. Se duas trilhas não podem ser concatenadas

porque o vértice final da primeira não é igual ao vértice inicial da segunda, seu produto é definido como zero. Isto

define uma álgebra associativa sobre  K . Essa álgebra é unitária se e somente se o quiver possui somente muitos

vértices finitos. Neste caso, os módulos sobre K Γ são naturalmente identificados com as representações de Γ.

Se o quiver possui muitos vértices e setas finitos, e o vértice final e o inicial de qualquer trilha são sempre distintos

(isto é, Q não tem ciclos orientados), então K Γ é um anel hereditário de dimensão finita sobre K .

Representações de quiversUma representação de um quiver, Q, é dita ser trivial se V(x)=0 para todos os vértices x em Q.

Um morfismo, f:V->V', entre representações do quiver Q, é uma coleção de mapas lineares

tal que para cada seta em Q de x para y , isto é, todos os

quadrados que f forma com as setas de V e V' se comutem. Um morfismo, f, é um isomorfismo, se f(x) é invertível

para todos os vértices x no quiver. Com estas definições, as representações dum quiver formam uma categoria.

Se V e W são representações dum quiver Q, então a soma direta destas representações, , é definida por

para todos os vértices x em Q e é a soma direta dos

mapeamentos lineares V(a) e W(a).

Uma representação é dita ser decomponível se ela é isomórfica à soma direta das representações não-zero.

Uma definição categórica duma representação de quiver pode também ser dada. O quiver em si pode ser considerado

uma categoria, onde os vértices são objetos e trilhas são morfismos. Então, uma representação de Q é apenas um

funtor covariante desta categoria para a categoria de espaços vetoriais de dimensões finitas.

Teorema de GabrielUm quiver é dum tipo finito se possui muitas representações finitas não-isomórficas indecomponíveis. O teorema de

Gabriel classifica todas as representações de quiver do tipo finito. Mais precisamente, declara que:

1. Um quiver (conectado) é de um tipo finito se e somente se o seu grafo subjacente (quando as direções das setas

são ignoradas) é um dos seguintes diagramas de Dynkin: , , , , .

2. As representações indecomponíveis estão numa correspondência um-para-um com as raízes positivas do sistema

de raízes do diagrama de Dynkin.

Page 41: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 41/157

Quiver 37

Ligações externas• Quiver Representations [1], Harm Derksen e Jerzy Weyman, AMS Notices

• Notas sobre representações de quivers [2]

•  Finite-dimensional algebras and quivers [3], Alistair Savage, "Encyclopedia of Mathematical Physics", eds. J.-P.

Françoise, G.L. Naber e Tsou S.T. Oxford: Elsevier, 2006, volume 2, pp. 313-320

• Digrafo [4] em USP

Referências[1] http:/   /  www. ams. org/  notices/  200502/  fea-weyman. pdf 

[2] http:/   /  www. amsta. leeds. ac. uk/  ~pmtwc/  quivlecs. pdf 

[3] http:/   /  www. arxiv.  org/  pdf/  math/  0505082

[4] http:/   /  www. icmc. sc. usp. br/  manuals/  sce183/  gfdig.  html

Vértice de corte (teoria dos grafos)

Um grafo não-dirigido com n=5

vertices e n-2=3 vértices de corte;

os vértices de corte (em vermelho)

são aqueles que não estão em

ambos as pontas

Em matemática e ciência da computação, um vértice de corte ou ponto de

articulação[1] é um vértice de um grafo tal que a remoção deste vértice provoca

um aumento no número de componentes conectados. Se o grafo era conectado

antes da remoção do vértice, ele será desconectado depois. Qualquer grafo

conectado com um vértice de corte tem uma conectividade de 1.

Embora bem definidos, mesmo para grafos dirigidos (digrafos), os vértices de corte

são utilizados principalmente em grafos não dirigidos. Em geral, um grafo

conectado, não-dirigido, com n vértices não pode ter mais do que n-2 vértices de

corte. Naturalmente, um grafo pode não ter nenhum vértice de corte.

Uma ponte é uma aresta análoga a um vértice de corte, ou seja, a remoção de uma

ponte aumenta o número de componentes conectados do grafo.

Encontrando Vértices de corte

Um algoritmo trivial é como se segue:

Page 42: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 42/157

Vértice de corte (teoria dos grafos) 38

Um grafo não-dirigido sem

vértices de corte

C = conjunto vazio (no final do algoritmo ele irá conter os vértices de corte)

a = número de componentes em G (encontrado usando uma Busca em profundidade/Busca em largura)

para cada i em V com arestas incidentes

b = número de componentes em G com i removido

se b > a

i é um vértice de corte

C = C + {i}

fimse

fimpara

Um algoritmo com o tempo muito melhor execução [2] é conhecido usando uma Busca em

profundidade.

Algoritmo em C++

#include <algorithm>#include <set>

#include <vector>

#include <cstring>

#define MAX 100

using namespace std;

int n, time_s, visit[MAX];

vector<int> ADJ[MAX];

int dfs(int u, set<int>& ans){

int menor = visit[u] = time_s++;

  int filhos = 0;

  for(int i = 0; i<ADJ[u].size(); i++){

  if(visit[ADJ[u][i]]==0){

filhos++;

  int m = dfs(ADJ[u][i], ans);

menor = min(menor,m);

  if(visit[u]<=m && (u!=0 || filhos>=2)){

ans.insert(u);

Page 43: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 43/157

Vértice de corte (teoria dos grafos) 39

}

}else{

menor = min(menor, visit[ADJ[u][i]]);

}

}

return menor;

}

set<int> get_articulacoes(){

set<int> ans;

time_s = 1;

memset(visit, 0, n*sizeof(int));

dfs(0,ans);

  return ans;

}

Teste seu código em: http:/   /  br. spoj.pl/  problems/  MANUT/ 

Vértices de corte em árvoresUm vértice v de uma árvore G é um vértice de corte de G somente se o grau do vértice é maior que 1.

[2] Slides apresentando o algoritmo O(n+m) (http:/   /  www. eecs. wsu. edu/  ~holder/  courses/  CptS223/  spr08/  slides/  graphapps.  pdf)

Ligações externas• Wolfram Mathworld (http:/   /  mathworld.wolfram.com/  Cut-Vertex. html) "Cut-Vertex"

• Nirmala, K.; Ramachandra Rao, A. O número de vértices de corte em um grafo regular. (em português), Cah.

Cent. Étud. Rech. Opér. 17, 295-299 (1975).

Page 44: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 44/157

Vizinhança 40

Vizinhança

Um grafo consistindo de 6 vértices e 7 arestas

Em teoria dos grafos, um vértice adjacente de um vértice v em um

Grafo é um vértice que está ligado a v por uma aresta.[][] A vizinhança

ou adjacência de um vértice v em um grafo G é um subgrafo induzido

de G constituído por todos os vértices adjacentes a v e todas as arestas

ligando esses dois vértices. Por exemplo, a imagem mostra um gráfico

de 6 vértices e 7 arestas. O vértice 5 é adjacente aos vértices 1, 2 e 4,

mas não é adjacente aos vértices 3 e 6. A vizinhança do vértice 5 é o

grafo com três vértices, 1, 2 e 4, e uma aresta conectando os vértices 1

e 2.

A vizinhança é frequentemente denotada  N G

(v) ou (quando o grafo não é ambíguo)  N (v). A mesma notação de

vizinhança também pode ser usada para se referir a um conjunto de vértices adjacentes ao invés dos subgrafos

induzidos correspondentes. A adjacência descrita acima não inclui v em si, e mais especificamente, a vizinhança

aberta de v; também é possível definir uma adjacência na qual v está incluído, chamada de vizinhança fechada edenotada por N 

G[v]. Quando não se afirma nada, a vizinhança é considerada aberta.

Vizinhanças podem ser usadas para representar grafos em algoritmos de computador, através da representações de

lista de adjacência e matriz de adjacência . Vizinhanças também são usadas no coeficiente de agrupamento de um

grafo, que é uma medida da densidade média de suas adjacências. Além disso, muitas classes importantes de grafos

podem ser definidas pelas propriedades de suas vizinhanças, ou por simetrias que relacionam vizinhanças umas com

as outras.

Um vértice isolado não tem vértices adjacentes. O grau de um vértice é igual ao número de vértices adjacentes. Um

caso especial é um laço que une um vértice a ele próprio; se tal aresta existe, o vértice pertence à sua própria

vizinhança.

Propriedades locais em grafos

No grafo octaédrico, a vizinhança de qualquer

vértice é um 4-ciclo.

Se todos os vértices em G tem adjacências que são isomorfas para o

mesmo grafo  H ,G é dito ser localmente  H , e se todos vértices em G

tem adjacências que pertencem a alguma família de grafos F , G é dito

ser localmente  F (Hell 1978, Sedlacek, 1983). Por exemplo, no grafo

octaédrico mostrado na figura, cada vértice tem uma adjacência

isomorfa a um grafo cíclico de quatro vértices, de modo que o octaedro

é localmente C 

4

.

Por exemplo:

• Qualquer grafo completo K n

é localmente K n-1

. Os únicos grafos

que são localmente completos são uniões disjuntas de grafos

completos.

• Um grafo de Turán T (rs,r ) é localmente T ((r -1)s,r -1). Mais

genericamente qualquer grafo Turan é localmente Turan.

• Todo grafo planar é localmente periplanar. No entanto, nem todos os grafos localmente periplanares são planares.

• Um grafo é livre de triângulos sse é localmente independente.

• Todo grafo k -cromático é localmente (k -1)-cromático. Todo grafo localmente k -cromático tem um númerocromático .[]

Page 45: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 45/157

Vizinhança 41

• Se uma família de grafos F é fechada sob a operação de tomar subgrafos induzidos, então cada grafo em F é

também localmente F . Por exemplo, todos os grafos cordais são localmente cordais; cada grafo perfeito é

localmente perfeito; todos os grafos de comparabilidade são localmente comparáveis.

• Um grafo é localmente cíclico se cada vizinhança é um ciclo. Por exemplo, o octaedro é o único grafo localmente

C 4, o icosaedro é o único grafo localmente C 

5e o gráfico Paley de ordem 13 é localmente C 

6.

Page 46: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 46/157

42

Árvores

Árvores

Uma árvore com 5 arestas e 6 vértices.

Na teoria dos grafos, uma árvore é um grafo conexo (existe caminho

entre quaisquer dois de seus vértices) e acíclico (não possui

ciclos)[1][2]. Caso o grafo seja acíclico mas não conexo, ele é dito uma

floresta. Uma floresta também é definida como uma união disjunta de

árvores.

Toda árvore é um grafo, mas nem todo grafo é uma árvore. Toda

árvore é um grafo bipartido e planar. Todo grafo conexo possui pelo

menos uma árvore de extensão associada, composta de todos os seus

vértices e algumas de suas arestas.

Propriedades

Seja G um grafo. G é uma árvore se satisfaz as seguintes condições:

• G é conexo e há exatamente um caminho entre dois vértices

quaisquer. Já em uma floresta, há no máximo um caminho entre dois

vértices, devido à não-conectividade.

• G é acíclico, e um simples ciclo é formado se qualquer aresta for adicionada a G.

• G é conexo, e deixará de ser conexo se qualquer aresta for removida de G.

• G é conexo, acíclico e tem n − 1 arestas.

Definições•• Uma árvore é denominada enraizada se um vértice é escolhido como especial. Esse vértice é chamado raiz. Uma

árvore que não é enraizada é denominada livre.

• Um grafo G é uma árvore se e somente se existir um único caminho entre cada par de vértices de G[2].

Page 47: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 47/157

Árvore de extensão 43

Árvore de extensão

Exemplo de uma árvore de dispersão (composta pelasarestas azuis)

Uma árvore de extensão ou árvore de dispersão (em inglês:

spanning tree) é o subconjunto de arestas de um grafo que forma

uma árvore contendo todos os vértices.

Uma árvore de extensão mínima ou árvore de extensão de

custo mínimo (em inglês: minimum spanning tree) é o

subconjunto de arestas de menor peso total em um grafo valorado

que forma uma árvore contendo todos os nós.

Uma árvore de extensão/dispersão apresenta as seguintes

propriedades:

•• Define um subconjunto de arestas que mantém o grafo

conectado em um único componente;

•• Em um grafo não-valorado qualquer árvore de dispersão é

mínima;•• Podem ser calculadas em tempo polinomial;

Os algoritmos usuais para a determinação de árvores de

extensão/dispersão são o algoritmo de Prim (1957) e o algoritmo de Kruskal (1956).

Referências• Eppstein, David (1999). "Spanning trees and spanners [1]". Handbook of Computational Geometry: 425 – 461,

Elsevier.

• Garey, Michael R.; Johnson, David S.. Computers and Intractability: A Guide to the Theory of NP-Completeness.

[S.l.]: W.H. Freeman, 1979. ISBN 0-7167-1045-5 A2.1: ND2, pg.206.• Wu, Bang Ye; Chao, Kun-Mao. Spanning Trees and Optimization Problems. [S.l.]: CRC Press, 2004. ISBN

1584884363

Referências[1] http:/   /  www. ics. uci. edu/  ~eppstein/  pubs/  Epp-TR-96-16.  pdf 

Page 48: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 48/157

Árvore de extensão mínima 44

Árvore de extensão mínima

A árvore de extensão mínima de um grafo plano. Cada aresta é identificada como

seu peso, o qual é aproximadamente igual ao seu comprimento.

Dado um grafo não orientado conectado,

uma árvore de extensão deste grafo é um

subgrafo o qual é uma árvore que conecta

todos os vértices. Um único grafo pode ter

diferentes árvores de extensão. Nós

podemos assinalar um  peso a cada aresta,

que é um número que representa quão

desfavorável ela é, e atribuir um peso a

árvore de extensão calculado pela soma dos

pesos das arestas que a compõem. Uma

árvore de extensão mínima (também

conhecida como árvore de extensão de

peso mínimo ou árvore geradora mínima)

é então uma árvore de extensão com peso

menor ou igual a cada uma das outras

árvores de extensão possíveis.

Generalizando mais, qualquer grafo não

direcional (não necessariamente conectado)

tem uma floresta de árvores mínimas, que é uma união de árvores de extensão mínimas de cada uma de suas

componentes conexas.

Um exemplo de uso de uma árvore de extensão mínima seria a instalação de fibras óticas num campus de uma

faculdade. Cada trecho de fibra ótica entre os prédios possui um custo associado (isto é, o custo da fibra, somado ao

custo da instalação da fibra, mão de obra, etc). Com esses dados em mãos (os prédios e os custos de cada trecho defibra ótica entre todos os prédios), podemos construir uma árvore de extensão que nos diria um jeito de conectarmos

todos os prédios sem redundância. Uma árvore geradora mínima desse grafo nos daria uma árvore com o menor

custo para fazer essa ligação.

Propriedades

Possível Multiplicidade

 Podem existir várias árvores de extensão mínima com o mesmo peso; Em particular, em um grafo não ponderado

(onde todos os pesos são iguais), toda árvore de extensão é mínima.

Unicidade

Se cada aresta tem um peso distinto, então existirá somente uma árvore de extensão mínima distinta. Isso pode ser

provado por indução ou por contradição. Isso é verdade em muitas situações realísticas, como no exemplo do

cabeamento do campus, dado acima. É muito difícil que tenhamos duas possibilidades de cabeamento com

exatamente o mesmo custo. Isso pode ser generalizado para florestas de árvores mínimas.

Page 49: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 49/157

Árvore de extensão mínima 45

Subgrafo de custo mínimo

Se todos os pesos são não-negativos, então uma árvore de extensão mínima é o subgrafo de custo mínimo

conectando todos os vértices, já que qualquer subgrafo contendo cíclos vai possuir um peso total maior.

Propriedade dos ciclos

 Para qualquer ciclo C no grafo, se o peso de uma aresta e de C é maior do que os pesos das outras arestas de C  ,

então essa aresta não pode pertencer a uma árvore de extensão mínima.

Propriedade do corte

 Para qualquer corte C no grafo, se o peso de uma aresta e de C é menor do que os pesos de outras arestas C  , então

essa aresta pertence a todas as árvores de extensão mínima possíveis do grafo.

AlgoritmosO primeiro algoritmo a encontrar uma arvore de extensão mínima foi desenvolvido pelo cientista checo Otakar

Borůvka em 1926 (veja algoritmo de Boruvka). Seu propósito era fornecer uma cobertura elétrica eficiente na árearural da cidade de Morávia do Sul. Existem hoje dois algoritmos comummente usados, o algoritmo de Prim e o

algoritmo de Kruskal. Todos são algoritmos gulosos que rodam em tempo polinomial, então o problema de encontrar

tais árvores pertence a classe de complexidade P.

O mais rápido algoritmo de árvore mínima de extensão foi desenvolvido por Bernard Chazelle, e foi baseado no

algoritmo de Borůvka. Ele roda em um tempo de O(m α(m,n)), onde m é o número de arestas, n refere-se ao número

de vértices e α é a clássica função inversa da função de Ackermann. A função α cresce de forma extremamente lenta,

então para todos os propósitos práticos ele pode ser considerado uma constante não maior que quatro; portanto o

algoritmo de Chazelle chega muito perto de um tempo O(m).

Qual é o algoritmo mais rápido possível para este problema? Isto é um dos mais antigos problemas em aberto na

ciência da computação. Há claramente um limite linear inferior, já que é necessário examinar todas as arestas ao

menos uma vez.

Ligações externas• Comparação de algoritmos para o problema da árvore de extensão mínima [1] - Explicação detalhada de cinco

algoritmos diferentes para o problema da árvore de extensão mínima, código completo de cada um deles e

comparação de performance entre eles.

Referências[1] http:/   /  danielamaral. wikidot.  com/  paa-2007-1-projeto-1-arvore-geradora-minima

Page 50: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 50/157

46

Representação de Grafos

Matriz de adjacênciaUma matriz de adjacência é uma das formas de se representar um grafo.

Dado um grafo G com n vértices, podemos representá-lo em uma matriz n x n  A(G)=[aij] (ou simplesmente  A). A

definição precisa das entradas da matriz varia de acordo com as propriedades do grafo que se deseja representar,

porém de forma geral o valor aij

guarda informações sobre como os vértices vi

e v j

estão relacionados (isto é,

informações sobre a adjacência de vie v

 j).

Para representar um grafo não direcionado, simples e sem pesos nas arestas, basta que as entradas aij

da matriz  A

contenham 1 se vi

e v j

são adjacentes e 0 caso contrário. Se as arestas do grafo tiverem pesos, aij

pode conter, ao

invés de 1 quando houver uma aresta entre vie v

 j, o peso dessa mesma aresta.

Por exemplo, a matriz de adjacência do grafo ao lado é

Em grafos não direcionados, as matrizes de adjacência são simétricas ao longo da diagonal principal - isto é, a

entrada aij

é igual à entrada a ji

. Matrizes de adjacência de grafos direcionados, no entanto, não são assim. Num

digrafo sem pesos, a entrada aij

da matriz é 1 se há um arco de vipara v

 je 0 caso contrário.

Um resultado interessante ocorre quando consideramos a potência k da matriz de adjacência, ou seja, o produto

Antes de apresentar o resultado, vamos definir um percurso em um grafo G. Um percurso corresponde a uma

sequência, finita e não vazia, de vértices do grafo, na qual (v0 , v1 , ..., vi , ..., vk-1 , vk ) é tal que, para todo 0 ≤ i ≤ k-1, vi

e vi+1

são vértices adjacentes. Os vértices v0

e vk 

são chamados, respectivamente, de origem e fim do percurso,

Page 51: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 51/157

Matriz de adjacência 47

enquanto v1 , v

2 , ..., v

k-1são os vértices internos ao caminho. O inteiro k é o comprimento do percurso. Um caminho

em um digrafo é um percurso no qual todos os arcos estão orientados no sentido origem do percurso-fim do

percurso.

Se  A é a matriz de adjacência de um grafo G com conjunto de vértices dado por V(G) = {v1 , v

2 , ..., v

n}, então a

entrada (i,j) de  Ak , com k  ≥ 1, corresponde ao número de percursos (distintos) de comprimento k existentes entre os

vértices vi e v j.Pode-se mostrar esse resultado por indução. Quando k = 1, o resultado segue de modo natural da definição de matriz

de adjacência, uma vez que existe um percurso de comprimento 1 entre o vértice vie o vértice v

 jse e só se {v

i , v

 j} é

uma aresta de G. Seja

e assuma que aij  (k-1) é o número de percursos distintos de comprimento k - 1 entre os vértices v

ie v

 jem G.

Considerando

e como Ak = A

k-1 . A, temos que

Observe que, na expressão acima, o elemento aij (k) é obtido multiplicando-se os elementos da linha i de A

k-1 pelos

respectivos elementos da coluna j de A e, em seguida, efetuando-se a soma dos produtos obtidos.

Todo percurso entre vie v

 jde comprimento k em G consiste de um percurso entre v

ie v

 pde comprimento k - 1, onde

v p

é adjacente a v j, seguido da aresta {v

 p , v

 j} e do vértice v

 j. O resultado decorre da hipótese de indução e da última

equação.

O resultado permanece válido para digrafos, fazendo-se as devidas adequações: trocando arestas por arcos e

percursos por caminhos.

Para ilustrar o resultado acima, observe as potências 2 e 3 da matriz de adjacência  A correspondente ao grafo da

figura:

.

O elemento (4,6) de  A2 indica que não há nenhum caminho de comprimento 2 ligando os vértices 4 e 6 do grafo

acima. Por outro lado, o elemento (4,6) de A3 indica que existem 3 caminhos de comprimento 3 ligando os vértices 4e 6. São eles: (4,3,4,6), (4,5,4,5) e (4,6,4,6).

Bibliografia• CHARTRAND, G., LESNIAK, L. Graphs & Digraphs. Editora CRC Press, 2004.

Page 52: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 52/157

Matriz de incidência 48

Matriz de incidênciaUma matriz de incidência representa computacionalmente um grafo através de uma matriz bidimensional, onde

uma das dimensões são vértices e a outra dimensão são arestas.

Dado um grafo G com n vértices e m arestas, podemos representá-lo em uma matriz n x m M. A definição precisa

das entradas da matriz varia de acordo com as propriedades do grafo que se deseja representar, porém de forma geral

guarda informações sobre como os vértices se relacionam com cada aresta (isto é, informações sobre a incidência de

um vértice em uma aresta).

Para representar um grafo sem pesos nas arestas e não direcionado, basta que as entradas da matriz M contenham 1

se o vértice incide na aresta, 2 caso seja um laço (incide duas vezes) e 0 caso o vertice não incida na aresta.

Por exemplo, a matriz de incidência do grafo ao lado é

Page 53: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 53/157

Lista de adjacência 49

Lista de adjacência

Um grafo não dirigido com 6 vértices e 7 arestas.

Em teoria dos grafos, uma lista de adjacência, estrutura de

adjacência[1] ou dicionário[2] é a representação de todas arestas ou

arcos de um grafo em uma lista.

Se o grafo é não direcionado, cada entrada é um conjunto (ou

multiconjunto) de dois nós contendo as duas extremidades da aresta

correspondente; se ele for dirigido, cada entrada é uma tupla de dois

nós, um indicando o nó de origem e o outro denotando o nó destino do

arco correspondente.

Normalmente, as listas de adjacência são desordenadas.

Aplicação em ciência da computação

O grafo da figura acima tem essa representação de lista de adjacência:

1 adjacente a 2,5

2 adjacente a 1,3,5

3 adjacente a 2,4

4 adjacente a 3,5,6

5 adjacente a 1,2,4

6 adjacente a 4

Lista de adjacências do grafo acima como encontrada em Cormen el al..

Em ciência da computação, uma listade adjacência é uma estrutura de dados

para representar grafos. Em uma

representação de lista de adjacência,

podemos manter, para cada vértice do

grafo, uma lista de todos os outros

vértices com os quais ele tem uma

aresta (a "lista de adjacência", deste

vértice). Por exemplo, a representação

sugerida por van Rossum[3], em que

uma tabela de dispersão (tabela hash)é usada para associar cada vértice com

um array de vértices adjacentes, pode

ser vista como um exemplo deste tipo

de representação. Outro exemplo é a

representação encontrada em Cormen

et al. em que um array indexado pelos números dos vértices aponta para uma lista simplesmente encadeada dos

vizinhos de cada vértice[4].

Page 54: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 54/157

Lista de adjacência 50

Lista de adjacências do grafo acima como sugerida por van Rossum.

Uma dificuldade com a estrutura da

lista de adjacência é que ela não tem

lugar óbvio para armazenar dados

associados com as arestas de um grafo,

tais como o comprimento ou custos das

arestas. Para remediar isso, algunstextos, como o de Goodrich e

Tamassia[5][6], defendem uma variante

mais orientada a objeto da estrutura da

lista de adjacência, às vezes chamada

de lista de incidência, que armazena

para cada vértice uma lista de objetos

que representam as arestas incidentes a

esse vértice. Para completar a

estrutura, cada aresta deve apontar de

volta para os dois vértices quecompõem a sua extremidade. Os

objetos extras nesta versão da lista de

adjacência aumentam o uso de

memória em relação à versão em que

vértices adjacentes são listados

diretamente, mas estas arestas extras também são um local conveniente para armazenar informações adicionais sobre

cada aresta (por exemplo, o seu comprimento).

Ainda uma outra forma de representação é a lista de adjacência com arrays em que um array indexado pelos

números dos vértices aponta para arrays contendo os vértices

[7]

.

Conflitos de escolhaA principal alternativa para a lista de adjacência é a matriz de adjacência. Para um grafo com uma matriz de

adjacência esparsa uma representação de lista de adjacências do grafo ocupa menos espaço, porque ele não usa

nenhum espaço para representar as arestas que não estão presentes[8]. Usando uma implementação de listas de

adjacência com um simples array em um computador de 32 bits, uma lista de adjacência de um grafo não

direcionado requer cerca de 8e bytes de armazenamento, onde e é o número de arestas: cada aresta dá origem a

entradas nas duas listas de adjacência e usa quatro bytes cada uma.

Por outro lado, pelo fato de que cada entrada em uma matriz de adjacências requer apenas um bit, elas podem ser

representados de uma forma muito compacta, ocupando apenas n2 /8 bytes de espaço contíguo, onde n é o número de

vértices. Além de apenas evitar desperdício de espaço, essa compactação incentiva a localidade de referência.

Observando que um grafo pode ter no máximo n2 arestas (permitindo laços) podemos fazer d  = e / n2 denotar a

densidade do grafo. Então, se 8e > n2 /8, a representação de lista de adjacência ocupa mais espaço, o que é verdadeiro

quando d > 1/64. Assim, um grafo deve ser muito escasso para uma representação de lista de adjacência ser mais

eficiente em termos de memória do que uma matriz de adjacência. No entanto, esta análise só é válida quando a

representação é usada para armazenar a estrutura de conectividade do grafo, sem qualquer informação numérica

sobre suas arestas.

Além do conflito de escolha relativo ao espaço, as estruturas de dados diferentes também facilitam operações

diferentes. É fácil encontrar todos os vértices adjacentes a um vértice dada em uma representação lista de adjacência;você simplesmente le a sua lista de adjacência. Com uma matriz de adjacência em vez disso se tem que pesquisar

Page 55: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 55/157

Lista de adjacência 51

mais de uma linha inteira, gastando tempo O(n). Se, pelo contrário, deseja realizar um teste de vizinhança em dois

vértices (isto é, determinar se eles têm uma aresta entre eles), uma matriz de adjacência proporciona isso na hora. No

entanto, este teste de vizinhança em uma lista de adjacências requer tempo proporcional ao número de arestas

associado com os dois vértices.

Page 56: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 56/157

52

Automorfismo de grafos

Automorfismo de grafosNo campo da matemática da teoria dos grafos, um automorfismo de um grafo é uma forma de simetria em que o

grafo é mapeado em si, preservando a conectividade vértice-aresta. Formalmente, um automorfismo de um grafo

G = (V , E ) é uma permutação σ do conjunto de vértices V , tal que para qualquer aresta e = (u,v), σ(e) = (σ(u),σ(v)) é

também uma aresta. Ou seja, ele é um isomorfismo de grafos de G para ele mesmo.[1] Automorfismos podem ser

definidos dessa maneira, tanto para grafos direcionados quando para grafos não-direcionados.

A composição de dois automorfismos é outro automorfismo, e o conjunto de automorfismos de um grafo dado, sob a

operação de composição, forma uma grupo, o grupo de automorfismo do grafo. No sentido inverso, pelo teorema de

Frucht, todos os grupos pode ser representados como o grupo de automorfismo de um grafo conexo. - Na verdade, de

um grafo cúbico.[2][3]

Complexidade computacionalConstruir o grupo de automorfismo é pelo menos tão difícil (em termos de complexidade computacional) quanto

resolver o problema do isomorfismo de grafos, para determinar se dois grafos dados correspondem vértice com

vértice e aresta com aresta. Pois, G e  H são isomorfos se e somente se o grafo desconectado formado pelo união

disjunta de grafos G e H tem um automorfismo que troca os dois componentes.[4]

Este desenho do grafo de Petersen mostra um

subgrupo de suas simetrias, isomorfo ao grupodiedro D

5, mas o grafo tem simetrias adicionais

que não estão presentes no desenho(uma vez que

o grafo é simétrico, todas as ligações são

equivalentes, por exemplo).

O problema do automorfismo de grafos é o problema de testar se um

grafo tem um automorfismo não trivial. Ele pertence à classe NP de

problemas de complexidade computacional. De forma semelhante aoproblema do isomorfismo de grafos, não se sabe se ele tem um

algoritmo que o resolva em tempo polinomial ou se é NP-completo.

Sabe-se que o problema do automorfismo de grafos é redutível

muitos-para-um em tempo polinomial para o problema do isomorfismo

de grafos, mas a redução inversa é desconhecida.[5] [6]

Exibindo a Simetria

Vários pesquisadores de desenho de grafos têm investigado algoritmos

para desenhar grafos de tal forma que o automorfismo do grafo setorne visível como simetrias do desenho. Isso pode ser feito usando um

método que não é projetado em torno de simetrias, mas que gera

automaticamente os desenhos simétricos, quando possível,[7] ou

explicitamente identificand as simetrias e usando-as para orientar a

colocação de vértice no desenho.[8] Nem sempre é possível mostrar

todas as simetrias do grafo, simultaneamente, de modo que talvez seja necessário escolher quais simetrias mostrar e

quais deixar sem visualização.

Page 57: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 57/157

Automorfismo de grafos 53

Famílias de grafos definidas pelos seus automorfismosVárias famílias de grafos são definidas por terem certos tipos de automorfismos:

• Um Grafo assimétrico é um grafo não direcionado, sem qualquer automorfismo não trivial.

• Um Grafo vértice-transitivo é um grafo não direcionado em que cada vértice pode ser mapeado por um

automorfismo em qualquer outro vértice.

• Um Grafo aresta-transitivo é um grafo não direcionado em que cada aresta pode ser mapeada por umautomorfismo em qualquer outra aresta.

• Um Grafo simétrico é um grafo tal que cada par de vértices adjacentes podem ser mapeados por um automorfismo

em qualquer outro par de vértices adjacentes.

• Um Grafo distância-transitivo é um grafo tal que cada par de vértices pode ser mapeada por um automorfismo em

qualquer outro par de vértices que estão à mesma distância.

• Um Grafo semi-simétrico é um grafo que é aresta-transitivo, mas não vértice-transitivo.

• Um Grafo meio-transitivo é um grafo que é vértice-transitivo e aresta-transitivo mas não simétrico.

• Um Grafo anti-simétrico é um grafo dirigido, juntamente com uma permutação σ sobre os vértices que mapeia as

arestas para arestas, mas inverte o sentido de cada aresta. Adicionalmente, σ necessita ser uma involução.

Relações de inclusão entre estas famílias estão indicadas no quadro seguinte:

distância-transitivo distância-regular fortemente regular

simétrico(arco-transitivo) t -transitivo, t  ≥ 2

Page 59: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 59/157

Automorfismo de grafos 55

[7][7] ; .

[8][8] .

Grafo regular

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

Em Teoria dos grafos, um grafo regular é um grafo onde cada vértice tem o mesmo número de adjacências, i.e. cada

vértice tem o mesmo grau ou valência. Um grafo direcionado regular também deve satisfazer a condição mais forte

de que o grau de entrada e o grau de saída de cada vértice sejam iguais uns aos outros.[] Um grafo regular com

vértices de grau k é chamado um grafo k‑regular ou grafo regular de grau k.

Grafos regulares de grau no máximo 2 são fáceis de classificar: Um grafo 0-regular é composto por vértices

desconectados, um grafo 1-regular consiste de arestas desconectadas, e um grafo 2-regular consiste de ciclos

desconectados.Um grafo 3-regular é conhecido como um grafo cúbico.

Um grafo fortemente regular é um grafo regular, onde cada par de vértices adjacentes tem o mesmo número l de

vizinhos em comum, e cada par de vértices não-adjacentes tem o mesmo número n de vizinhos em comum. Os

menores grafos que são regulares, mas não fortemente regulares são os grafos ciclos e os grafos circulantes em 6

vértices.

O grafo completo é fortemente regular para qualquer .

Um teorema de Nash-Williams diz que cada k‑grafo regular em 2k + 1 vértices tem um ciclo hamiltoniano.

grafo 0-regular grafo 1-regular grafo 2-regular grafo 3-regular

Page 60: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 60/157

Grafo regular 56

Propriedades algébricas

Seja A a matriz de adjacência de um grafo. Então, o grafo é regular se e somente se é um autovetor

de  A..[1] Seu autovalor será o grau constante do grafo. Autovetores correspondentes a outros autovalores são

ortogonais a , assim como para tais autovetores , nós temos .

Um grafo regular de grau k é conectado se e somente se o autovalor k tem uma multiplicidade 1.[1]

[1][1] Cvetković, D. M.; Doob, M.; and Sachs, H. Spectra of Graphs: Theory and Applications, 3rd rev. enl. ed. New York: Wiley, 1998.

Ligações externas• GenReg (http:/   /  www. mathe2.uni-bayreuth.de/  markus/  reggraphs. html) software e dados por Markus

Meringer.

Page 61: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 61/157

Grafo fortemente regular 57

Grafo fortemente regular

O Grafo Paley de ordem 13, um grafo fortemente regular com

parâmetros gfr(13,6,2,3).

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

Na teoria dos grafos, uma disciplina dentro da matemática, um grafo fortemente regular é definido como se segue.

Seja G = (V , E ) um grafo regular com v vértices e grau k . G é dito ser fortemente regular se houver também inteiros

λ e μ tais que:

• Cada dois vértices adjacentes tem λ vizinhos em comum.

• Cada dois vértices não-adjacentes tem μ vizinhos em comum.

Um grafo deste tipo é dito às vezes ser um gfr(v,k ,λ,μ).

Alguns autores excluem grafos que satisfazem a definição trivial, ou seja, os grafos que são a união disjunta de um

ou mais grafos completos de tamanho igual, e os seus complementares, os grafos de Turan.

Um grafo fortemente regular é um grafo distância-regular com diâmetro 2, mas somente se μ não é zero.

Page 62: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 62/157

Grafo fortemente regular 58

Propriedades• Os quatro parãmetros em um grs(v,k ,λ,μ) não são independentes, como é fácil mostrar que:

• Seja I denotando a matriz identidade (de ordem v) e faça-se J denotar a matriz cujas entradas são todas iguais a 1.

A matriz de adjacência A de um grafo fortemente regular satisfaz as seguintes propriedades:

(Esta é uma reafirmação trivial da exigência para os graus de vértices).

(O primeiro termo indica o número de caminhos de 2-passos de cada vértice para todos os vértices. Para os

pares de vértices diretamente ligados por uma aresta, a equação reduz-se o número de tais caminhos em 2

passos sendo igual a . Para os pares de vértices não directamente ligados por uma aresta, a equação reduz-se

ao número de tais caminhos em 2 passos sendo igual a . Para os auto-pares triviais, a equação reduz-se para

o grau igual a k ).• O grafo tem exatamente três autovalores:

• cuja multiplicidade é 1

• cuja multiplicidade é

• cuja multiplicidade é

• Grafos fortemente regulares para os quais são chamados grafos de conferênciadevido a sua conexão com matrizes de conferência simétricas. Seus parâmetros se reduzem a

.

• Grafos fortemente regulares para os quais tem autovalores inteiros com

multiplicidades desiguais.• O complemento de um gfr(v,k ,λ,μ) também é fortemente regular. É um gfr(v, v− k −1, v−2−2k +μ, v−2k +λ)

Exemplos• O grafo de Shrikhande é um gfr(16,6,2,2) que não é um grafo distância-transitivo.

• O ciclo de comprimento 5 é um gfr(5,2,0,1).• O grafo de Petersen é um gfr(10,3,0,1).

• Os grafos de Chang são gfr(28,12,6,4).

• O grafo de Hoffman – Singleton é um gfr(50,7,0,1).

• O grafo de Higman – Sims é um gfr(100,22,0,4).

• Os grafos de Paley de ordem q são gfr(q, (q − 1)/2, (q − 5)/4, (q − 1)/4.

• O grafo de rook quadrado n × n é um gfr(n2, 2n − 2, n − 2, 2).

• O grafo de Brouwer – Haemers é um gfr(81,20,1,6).

• O grafo de Schläfli é um gfr(27,16,10,8).

Page 63: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 63/157

Grafo fortemente regular 59

Bibliografia• A.E. Brouwer, A.M. Cohen, and A. Neumaier (1989), Distance Regular Graphs. Berlin, New York:

Springer-Verlag. ISBN 3-540-50619-5, ISBN 0-387-50619-5

• Chris Godsil and Gordon Royle (2004), Algebraic Graph Theory. New York: Springer-Verlag. ISBN

0-387-95241-1

Ligações externas• Eric W. Weisstein, Mathworld artigo com numerosos exemplos. [1]

• Gordon Royle, Lista dos maiores grafos e famílias. [2]

• Andries E. Brouwer, Parametros de grafos fortemente regulares. [3]

Referências[1] http:/   /  mathworld.  wolfram. com/  StronglyRegularGraph.  html

[2] http:/   /  people.csse.uwa.  edu.  au/  gordon/  remote/  srgs/ 

[3] http:/  

 /  

www. 

win.tue. 

nl/  

~aeb/  

graphs/  

srg/  

srgtab. 

html

Page 64: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 64/157

Grafo distância-regular 60

Grafo distância-regular

O grafo de Shrikhande, um grafo

distância-regular.

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

No campo da matemática da teoria dos grafos, um grafo distância-regular é um grafo regular tal que para quaisquer

dois vértices v e w a uma distância i o número de vértices adjacentes a w e à distância j a partir de v é o mesmo. Todo

grafo distância-transitivo é distância regular. Com efeito, grafos distância-regular foram introduzidos como uma

generalização combinatória de grafos distância-transitivos, tendo as propriedades de regularidade numérica do

último, sem ter necessariamente um grande grupo de automorfismo.

Alternativamente, um grafo distância-regular é um grafo para o qual existem inteiros bi,ci,i=0,...,d tais que paraquaisquer dois vértices x, y em G e distância i=d(x,y), há exatamente c

ivizinhos de y em G

i-1(x) e b

ivizinhos de y

em Gi+1

(x), onde Gi(x) é o conjunto de vértices y de G com d(x,y)=i (Brouwer et al. 1989, p. 434). [1] O array de

inteiros caracterizando um grafo distância regular é conhecido como o seu array de interseção.

Um grafo distância-regular com diâmetro 2 é fortemente regular, e reciprocamente (a menos que o grafo seja

desconexo).

Page 65: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 65/157

Grafo distância-regular 61

Números IntersecçãoÉ usual utilizar a seguinte notação para um grafo distância-regular G. O número de vértices é n. O número de

vizinhos de w (Isto é, os vértices adjacentes a w) cuja distância de v é i, i + 1, e i − 1 é denotada por ai, b

i, e c

i,

respectivamente; estes são os números de intersecção de G. Obviamente, a0

= 0, c0

= 0, e b0

é igual a k , o grau de

qualquer vértice. Se G tem um diâmetro finito, então d denota o diâmetro enós temos bd 

= 0. Também temos que

ai+bi+ci= k 

Os numeros ai, b

i, e c

isão frequentemente mostrados em um array de três linhas.

chamado o array de intersecção de G. Eles podem ser formados também por uma matriz tridiagonal

chamada de matriz de intersecção.

Matrizes de adjacência distânciaSuponha que G é um grafo distância-regular conexo. Para cada distância i = 1, ..., d , podemos formar um grafo G

ino

qual os vértices são adjacentes se sua distância em G é igual a i. Façamos  Aiser a matriz de adjacência de G

i. Por

exemplo, A1

é a matriz de adjacência A de G. Além disso, seja A0

= I , a matriz identidade. Isto nos dá d + 1 matrizes

 A0,  A1, ..., Ad , chamadas as matrizes de distância de G. A soma é a matriz  J em que cada entrada é 1. Há umafórmula de produto importante:

A partir desta fórmula resulta que cada Aié uma função polinomial de A, de grau i, e que A satisfaz um polinômio de

grau d + 1. Além disso, A tem exatamente d + 1 autovalores distintos, dos quais o maior é k , o grau.

As matrizes de distância abrangem um subespaço vetorial do espaço vetorial de todas n × n matrizes reais. É um fato

notável que o produto  Ai  A

 jde quaisquer duas matrizes de distância é uma combinação linear das matrizes de

distância:

Isto significa que as matrizes de distância geram um esquema de associação. A teoria dos esquemas de associação é

fundamental para o estudo dos gráficos de distância regular. Por exemplo, o fato de que Aié uma função polinomial

de A é um fato sobre os esquemas de associação.

Page 66: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 66/157

Grafo distância-regular 62

Exemplos• Grafos completos são distância regular com diâmetro 1 e grau v−1.

• Ciclos C 2d +1

de comprimento ímpar são distância regular com k = 2 e diâmetro d . Os números de intersecção ai=

0, bi= 1, e c

i= 1, exceto para os casos usuais especiais (ver acima) e c

d = 2.

• Todos os grafos de Moore, em particular o grafo de Petersen e o grafo de Hoffman – Singleton, são distância

regulares.• grafos fortemente regulares são distância regular.

• Grafos ímpares são distância regular.

Page 67: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 67/157

Grafo distância-transitivo 63

Grafo distância-transitivo

O grafo de Biggs-Smith, o maior grafo

distância-transitivo 3-regular.

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

No campo da matemática da teoria dos grafos, um grafo distância-transitivo é um grafo tal que, dados dois vértices

quaisquer v e w em qualquer distância i, e quaisquer outros dois vértices  x e  y à mesma distância, há um

automorfismo do grafo que carrega v para x e w para y.

Um grafo distância-transitivo é vértice-transitivo e simétrico bem como distância-regular.

Um grafo distância-transitivo é interessante, em parte, porque tem um grande grupo de automorfismo. Alguns

exemplos interessantes de grupos finitos são os grupos de automorfismos de grafos distância-transitivos,

especialmente daqueles cujo diâmetro é de 2.

Grafos distância-transitivos foram definidos primeiramente em 1971 por Norman L. Biggs e D. H. Smith, que

mostraram que existem apenas 12 grafos distância-transitivos trivalentes finitos. São eles:

Page 68: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 68/157

Grafo distância-transitivo 64

Nome do grafo Contagem de vértices Diâmetro Cintura array de interseção

grafo completo K4

4 1 3 {3;1}

grafo bipartido completo K3,3

6 2 4 {3,2;1,3}

grafo de Petersen 10 2 5 {3,2;1,1}

grafo do cubo 8 3 4 {3,2,1;1,2,3}

grafo de Heawood 14 3 6 {3,2,2;1,1,3}

grafo de Pappus 18 4 6 {3,2,2,1;1,1,2,3}

grafo de Coxeter 28 4 7 {3,2,2,1;1,1,1,2}

grafo de Tutte – Coxeter 30 4 8 {3,2,2,2;1,1,1,3}

grafo do dodecaedro 20 5 5 {3,2,1,1,1;1,1,1,2,3}

grafo de Desargues 20 5 6 {3,2,2,1,1;1,1,2,2,3}

grafo de Biggs-Smith 102 7 9 {3,2,2,2,1,1,1;1,1,1,1,1,1,3}

grafo de Foster 90 8 10 {3,2,2,2,2,1,1,1;1,1,1,1,2,2,2,3}

Independente em 1969, um grupo de russos liderados por Georgy Adelson-Velsky mostrou que existem grafos que

são distância-regulares, mas não distância-transitivos. O único grafo deste tipo com um grau três é o Tutte 12-gaiola

de 126 vértices. O menor grafo distância-regular que não é a distância-transitivo é o grafo de Shrikhande. Listas

completas de grafos distância-transitivos são conhecidas para alguns graus maiores do que três, mas a classificação

de grafos distância-transitivos com graus de vértice arbitrariamente grandes continua em aberto.

A mais simples família de exemplos assintótica de grafos distância-transitivos são os grafos Hipercubo. Outras

famílias são os grafos cubo dobrado e os grafos torre quadrados. Todas essas três famílias têm arbitrariamente um

grau elevado.

Primeiros trabalhos• Adel'son-Vel'skii, G. M.; Veĭsfeĭler, B. Ju.; Leman, A. A.; Faradžev, I. A. (1969), "An example of a graph which

has no transitive group of automorphisms", Doklady Akademii Nauk SSSR 185: 975 – 976, MR 0244107 (http:/   / 

www. ams. org/  mathscinet-getitem?mr=0244107).

• Biggs, Norman (1971), "Intersection matrices for linear graphs", Combinatorial Mathematics and its Applications

(Proc. Conf., Oxford, 1969), London: Academic Press, pp. 15 – 23, MR 0285421 (http:/   /  www. ams. org/ 

mathscinet-getitem?mr=0285421).

• Biggs, Norman (1971), Finite Groups of Automorphisms, London Mathematical Society Lecture Note Series, 6,

London & New York: Cambridge University Press, MR 0327563 (http:/   /  www. ams. org/ 

mathscinet-getitem?mr=0327563).

• Biggs, N. L.; Smith, D. H. (1971), "On trivalent graphs", Bulletin of the London Mathematical Society 3:

155 – 158, doi: 10.1112/blms/3.2.155 (http:/   /  dx. doi. org/  10. 1112/  blms/  3.2. 155), MR 0286693 (http:/   /  www.

ams. org/  mathscinet-getitem?mr=0286693).

• Smith, D. H. (1971), "Primitive and imprimitive graphs", The Quarterly Journal of Mathematics, Oxford, Second 

Series 22: 551 – 557, doi: 10.1093/qmath/22.4.551 (http:/   /  dx. doi. org/  10. 1093/  qmath/  22. 4. 551), MR 0327584

(http:/   /  www.ams. org/  mathscinet-getitem?mr=0327584).

Pesquisas

• Biggs, N. L. (1993), "Distance-Transitive Graphs", Algebraic Graph Theory (2nd ed.), Cambridge University

Press, pp. 155 – 163, chapter 20.

• Van Bon, John (2007), "Finite primitive distance-transitive graphs", European Journal of Combinatorics 28 (2):

517 – 532, doi: 10.1016/j.ejc.2005.04.014 (http:/   /  dx. doi. org/  10. 1016/   j. ejc. 2005. 04.014), MR 2287450 (http:/ 

Page 69: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 69/157

Grafo distância-transitivo 65

 /  www. ams. org/  mathscinet-getitem?mr=2287450).

• Brouwer, A. E.; Cohen, A. M.; Neumaier, A. (1989), "Distance-Transitive Graphs", Distance-Regular Graphs,

New York: Springer-Verlag, pp. 214 – 234, chapter 7.

• Cohen, A. M. Cohen (2004), "Distance-transitive graphs", in Beineke, L. W.; Wilson, R. J., Topics in Algebraic

Graph Theory, Encyclopedia of Mathematics and its Applications, 102, Cambridge University Press,

pp. 222 – 249.• Godsil, C.; Royle, G. (2001), "Distance-Transitive Graphs", Algebraic Graph Theory, New York:

Springer-Verlag, pp. 66 – 69, section 4.5.

• Ivanov, A. A. (1992), "Distance-transitive graphs and their classification", in Faradžev, I. A.; Ivanov, A. A.; Klin,

M. et al., The Algebraic Theory of Combinatorial Objects, Math. Appl. (Soviet Series), 84, Dordrecht: Kluwer,

pp. 283 – 378, MR 1321634 (http:/   /  www. ams. org/  mathscinet-getitem?mr=1321634).

Grafo simétrico

O grafo de Petersen é um grafo (cúbico) simétrico.

Qualquer par de vértices ligados pode ser mapeado

para outro por um automorfismo, uma vez que

qualquer anel de cinco vértices pode ser mapeado para

qualquer outro.

Famílias de grafos definidos por seus automorfismos

distância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

Page 70: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 70/157

Grafo simétrico 66

No campo da matemática da teoria dos grafos, um grafo G é simétrico (ou arco-transitivo) se, dados quaisquer dois

pares de vértices ligados u1 —v

1e u

2 —v

2de G , há um automorfismo

 f : V (G) → V (G)

tal que

 f (u1) = u

2and f (v

1) = v

2.[]

Em outras palavras, um grafo é simétrico se seu grupo de automorfismo age transitivamente em pares ordenados de

vértices ligados (isto é, sobre as arestas consideradas como tendo um sentido).[] Tal grafo é chamado às vezes

também 1-arco-transitivo[] ou flag-transitivo.[]

Por definição (ignorando u1

e u2), um grafo simétrico sem vértices isolados deve também ser vértice-transitivo.[]

Como a definição acima mapeia uma aresta a outra, um grafo simétrico também deve ser aresta-transitivo. Contudo,

um grafo aresta-transitivo não precisa ser simétrico, uma vez que a —b pode mapear a c —d , mas não a d  —c. Grafos

simétricos, por exemplo, aão aresta-transitivos e regulares, mas não vértice-transitivos.

Todo grafo simétrico conexo deve, portanto, ser tanto vértice-transitivo quanto aresta-transitivo, e o inverso é

verdadeiro para grafos de grau ímpar.[] No entanto, para graus pares, existem grafos conectados que são

vértice-transitivos e aresta-transitivos, mas não simétricos.[1]

Tais grafos são denominados meio-transitivos.[]

Omenor grafo conexo meio-transitiva é o grafo de Holt, com grau 4 e 27 vértices. [][2] De forma confusa, alguns

autores usam o termo "grafo simétrico" para significar um grafo que é vértice-transitivo e aresta-transitivo, ao invés

de um grafo arco-transitivo. Tal definição inclui grafos meio-transitivos, que são excluídos pela definição acima.

Um grafo distância-transitivo é aquele em que em vez de considerar pares de vértices ligados (i.e. vértices a uma

distância de um), a definição abrange dois pares de vértices, cada um à mesma distância. Tais grafos são

automaticamente simétricos, por definição.[]

Um t -arco é definido como uma sequência de t +1 vértices ligados, com quaisquer vértices repetidos estando a mais

de 2 passos distante. Um grafo  t-transitivo é um grafo tal que o grupo de automorfismo atua transitivamente nos

t -arcos, mas não nos (t +1)-arcos. Uma vez que os 1-arcos são simplesmente arestas, qualquer grafo simétrico de grau

3 ou superior tem que ser t -transitivo para algum t , e o valor de t pode ser usado para além disso classificar grafos

simétricos. O cubo é 2-transitivo, por exemplo.[]

ExemplosCombinando a condição de simetria com a restrição de que os grafos sejam cúbicos (ou seja, todos os vértices tem

grau 3) resulta abolutamente uma forte condição, e tais grafos são raros o bastante para serem citados. O censo de

Foster e suas extensões fornecem tais listas.[3] O censo de Foster foi iniciado na década de 1930 por Ronald M.

Foster enquanto ele era um contratado pela Bell Labs,[4] e em 1988 (quando Foster estava com 92 anos de idade[]) o

então censo de Foster corrente (listando todos os grafos cúbicos simétricos até 512 vértices) foi publicado em forma

de livro.[5]

[2][2] .

[3] Marston Conder, Trivalent symmetric graphs on up to 768 vertices (http:/   /  www. math.  auckland.  ac. nz/  ~conder/  preprints/  cubic768.  ps) , J.

Combin. Math. Combin. Comput, vol. 20, pp. 41 – 63

[4] Foster, R. M. "Geometrical Circuits of Electrical Networks." Transactions of the American Institute of Electrical Engineers 51, 309 – 317,

1932.

[5][5] "The Foster Census: R.M. Foster's Census of Connected Symmetric Trivalent Graphs", by Ronald M. Foster, I.Z. Bouwer, W.W. Chernoff, B.

Monson and Z. Star (1988) ISBN 0919611192

Page 71: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 71/157

Grafo simétrico 67

Ligações externas• grafos cúbicos simétricos (The Foster Census) (http:/   /  people. csse. uwa. edu.au/  gordon/  remote/  foster/  )

• grafos trivalentes (cúbicos) simétricos com até 2048 vértices (http:/   /  www. math. auckland.ac. nz/  ~conder/ 

symmcubic2048list. txt)

Page 72: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 72/157

Grafo meio-transitivo 68

Grafo meio-transitivo

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

No campo da matemática da teoria dos grafos, um grafo meio-transitivo é um grafo que é tanto vértice-transitivo

quanto aresta-transitivo, mas não é simétrico.[] Em outras palavras, um grafo é meio-transitivo, se o seu grupo de

automorfismo atua transitivamente em ambos os seus vértices e arestas, mas não em pares ordenados de vértices

ligados.

O grafo de Holt é o menor grafo meio-transitivo. A

falta de simetria reflexiva neste desenho destaca o fato

de que as arestas não são equivalentes aos suas

inversas.

Todo grafo simétrico conectado deve ser vértice-transitivo e

aresta-transitivo, e o inverso é verdadeiro para grafos de grau

ímpar,[] de modo que os grafos meio-transitivos de grau ímpar não

existem. Contudo, existem grafos meio-transitivos de grau par.[1]

O menor grafo meio-transitivo é o grafo de Holt, com grau 4 e 27

vértices.

[][2]

[1] Bouwer, Z. "Vertex and Edge Transitive, But Not 1-Transitive Graphs."

Canad. Math. Bull. 13, 231 – 237, 1970.

[2][2] .

Page 73: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 73/157

Grafo semissimétrico 69

Grafo semissimétrico

O grafo de Folkman, o menor grafo semissimétrico.

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

No campo da matemática da teoria dos grafos, um grafo semissimétrico é um grafo não-direcionado que é

aresta-transitivo e regular, mas não é vértice transitivo.

Em outras palavras, um grafo é semissimétrico se cada vértice tem o mesmo número de arestas incidentes, e há uma

simetria tomando qualquer das suas arestas para quaisquer outras de suas arestas, mas há algum par de vértices quenão podem ser mapeados entre si por uma simetria. Um grafo semissimétrico deve ser bipartido e seu grupo de

automorfismo deve agir transitivamente em cada um dos dois conjuntos de vértices da bipartição. No diagrama da

direita, os vértices verdes não podem ser mapeados para os vermelhos por qualquer automorfismo.

Grafos semissimétricos foram primeiramente estudados por Jon Folkman em 1967, que descobriu o menor grafo

semissimétrico, o grafo de Folkman em 20 vértices[1].

O menor grafo cúbico semissimétrico é o grafo de Gray em 54 vértices. Foi observado pela primeira vez que era

semissimétrico por Bouwer em 1968.[] Foi provado ser o menor grafo cúbico semissimétrico por Dragan Marušič e

Aleksander Malnič[] .

Todos os grafos cúbicos semissimétricos de até 768 vértices são conhecidos. Segundo Malnič, Marušič e Potočnik,

os quatro menores grafos cúbicos semissimétricos possíveis, após o grafo de Gray são o grafo de Iofinova-Ivanov em

110 vértices, o grafo de Ljubljana em 112 vértices,[] um grafo de 120 vértices com cintura 8 e a gaiola-12 de Tutte.[2]

Page 74: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 74/157

Grafo semissimétrico 70

[2][2] .

Grafo aresta-transitivo

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

No campo da matemática da teoria dos grafos, um grafo aresta-transitivo é um grafo G tal que, dadas duas arestas

e1

e e2

de G, há um automorfismo de G que mapeia e1

em e2.[]

Em outras palavras, um grafo é aresta-transitivo, se o seu grupo de automorfismo atua transitivamente em suas

arestas.

Exemplos e propriedades

O grafo Gray é aresta-transitivo e regular, mas não é

vértice-transitivo.

Grafos aresta-transitivos incluem qualquer grafo bipartido

completo , e qualquer grafo simétrico, como os vértices e

as arestas do cubo.[] Grafos simétricos são també vértice-transitivo

(se eles são conectados), mas no geral grafos aresta-transitivos não

precisam ser vértice-transitivos. O grafo Gray é um exemplo de

um grafo que é aresta-transitivo, mas não vértice-transitivo. Todos

estes grafos são bipartidos,[] e, portanto, podem ser coloridos, com

apenas duas cores.

Um grafo aresta-transitivo que també é regular, mas não

vértice-transitivo, é chamado semi-simétrico. O grafo Gray mais

uma vez dá um exemplo.

Page 75: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 75/157

Grafo vértice-transitivo 71

Grafo vértice-transitivo

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

No campo da matemática da teoria dos grafos, um grafo vértice-transitivo é um grafo G tal que, dados quaisquer

dois vértices v1

e v2

de G, existe algum automorfismo

tal que

Em outras palavras, um grafo é vértice-transitivo se o seu grupo de automorfismo atua transitivamente em seus

vértices.[1] Um grafo é vértice-transitivo se e somente se seu grafo complementar é, uma vez que as ações do grupo

são idênticas.

Todo grafo simétrico, sem vértices isolados é vértice-transitivo, e cada grafo vértice-transitivo é regular. No entanto,

nem todos os grafos vértice-transitivos são simétricos (por exemplo, as arestas do tetraedro truncado), e nem todos os

grafos regulares são vértice-transitivos (por exemplo, o grafo de Frucht).

Exemplos finitos

As arestas do tetraedro truncado formam um grafo

vértice-transitivo (também um grafo de Cayley) que não é

simétrico.

Grafos vértice-transitivos finitos incluem os grafos simétricos

(como o grafo de Petersen, o grafo de Heawood e os vértices e

arestas dos sólidos platônicos). Os grafos de Cayley finitos

(como ciclos de cubos conectados) também são

vértice-transitivos, como o são os vértices e arestas dos

sólidos de Arquimedes (embora apenas dois deles sejam

simétricos).

Propriedades

A conectividade de arestas de um grafo vértice-transitivo é

igual ao grau d , enquanto a conectividade de vértices será, no

mínimo, 2(d +1)/3.[2] Se o grau é de 4 ou menos, ou o grafo

também é aresta-transitivo, ou o grafo é um grafo de Cayley

mínimo, então a conectividade de vértice também será igual a d .[3]

Page 76: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 76/157

Grafo vértice-transitivo 72

Exemplos infinitosGrafos vértice-transitivos finitos incluem:

• caminhos infinitos (infinitos em ambas as direções)

• árvores regulares infinitas, por exemplo o grafo de Cayley dos grupos livres

• grafos de Cayley infinitos

• o grafo de Rado

Dois grafos vértice-transitivos contáveis são chamados quase-isométricos se a razão de suas funções distância é

delimitada a partir de baixo e de cima. Uma conjectura conhecida diz que todo grafo infinito vértice-transitivo é

quase-isométrico a um grafo de Cayley. Um contra-exemplo foi proposto por Diestel e Leader.[4] Mais recentemente,

Eskin, Fisher e Whyte confirmaram o contra-exemplo.[5]

Referências[3] (http:/   /  www. cs. uchicago.  edu/  files/  tr_authentic/  TR-94-10.  ps)

Page 77: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 77/157

Grafo de Cayley 73

Grafo de Cayley

O grafo de Cayley do grupo livre em dois

geradores a e b

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

Em matemática, área da teoria dos grafos, um grafo de Cayley, também conhecido como grafo colorido de Cayley,

diagrama de Cayley, diagrama de grupo, ou grupo colorido[] é um grafo que codifica a estrutura abstrata de um

grupo. Sua definição é sugerida pelo teorema de Cayley (nomeado em honra a Arthur Cayley) e usa um conjunto de

geradores específico, usualmente finito, para o grupo. É um instrumento central em combinatória e teoria geométrica

de grupos.

Definição

Suponha que seja um grupo e seja um conjunto de geradores. O grafo de Cayley é um grafo

direcionado colorido construído como se segue[1]

• A cada elemento de é atribuído um vértice: o conjunto de vértices de é identificado com• A cada gerador de é atribuída uma cor .

• Para qualquer os vértices correspondentes aos elementos e são unidos por uma aresta de

cor . Assim, o conjunto de arestas consiste em pares da forma com proporcionando a

cor.

Na teoria geométrica de grupos, o conjunto é geralmente assumido ser finito, simétrico, isto é e nãocontendo o elemento identidade do grupo. Neste caso, o grafo de Cayley incolor é um grafo comum: suas arestas não

são orientadas e não contém laços se e somente se .

Page 78: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 78/157

Grafo de Cayley 74

Exemplos• Suponha que é o grupo cíclico infinito e o conjunto S consiste em um gerador padrão e sua inversa (-1

na notação aditiva), então o grafo de Cayley é uma cadeia infinita.

• Similarmente, se é o grupo cíclico finito de ordem n e o conjunto S consiste de dois elementos, o

gerador padrão de G e o seu inverso, então o grafo de Cayley é o ciclo .

• O grafo de Cayley do produto direto de grupos é o produto cartesiano dos grafos de Cayley correspondentes.

Assim, o grafo de Cayley do grupo abeliano com o conjunto de geradores que consiste em quatro elementos

é a grade no plano , enquanto que para o produto direto com geradores

semelhantes o grafo de Cayley é a grade finita em um toro.

O grafo de Cayley do grupo diedro D4

em dois

geradores α e β

• O grafo Cayley do grupo diedro D4

em dois geradores α e β é

descrito à esquerda. As setas vermelhas representam a

multiplicação à esquerda pelo elemento α. Uma vez que o

elemento β é auto-inversível, as linhas azuis que representam a

multiplicação à esquerda pelo elemento β são não direcionadas.

Portanto, o grafo é misto: ele tem oito vértices, oito setas, equatro arestas. A tabela Cayley do grupo D4

pode ser derivada a

partir da apresentação do grupo

Ligações externas

• Diagramas Cayley [2]

[2] http:/   /  www. weddslist. com/  groups/  cayley-plat/  index.  html

Page 79: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 79/157

Grafo antissimétrico 75

Grafo antissimétrico

Um grafo antissimétrico.

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

No campo da matemática da teoria dos grafos, um grafo antissimétrico é um grafo orientado que é isomórfico ao

seu próprio grafo transposto, o grafo formado pela inversão de todas as suas arestas. O isomorfismo necessita ser

uma involução sem nenhum ponto fixo.

Grafos antissimétricos foram primeiramente introduzidos sob o nome de "dígrafos antissimétricos" por Tutte,

1967[1]. Eles surgiram quando da modelagem da busca de caminhos alternados e ciclos alternados em algoritmos

para encontrar acoplamentos em grafos, em testes se um padrão still life no jogo da vida, desenvolvido pelo

matemático britânico John Horton Conway, pode ser dividido em componentes mais simples, em desenho de grafos,

e em grafos de implicação usados para resolver eficientemente o problema da 2-satisfatibilidade.

Page 80: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 80/157

Grafo antissimétrico 76

DefiniçãoConforme definido, por exemplo, por Goldberg e Karzanov (1996)[], um grafo antissimétrico G é um grafo

direcionado, junto com uma função σ mapeando vértices de G a outros vértices de G, satisfazendo as seguintes

propriedades:

1. Para cada vértice v, σ(v) ≠ v

2. Para cada vértice v, σ(σ(v)) = v

3. Para cada aresta (u,v), (σ(v),σ(u)) também deve ser uma aresta.

Pode-se usar a terceira propriedade para estender σ para uma função de inversão de orientação das arestas de G.

O grafo transposto de G é o grafo formado pela inversão de todas as arestas de G, e σ define um isomorfismo de

grafos de G para a sua transposição. No entanto, em um grafico anti-simétrico, é adicionalmente necessário que o

isomorfismo forme pares de cada vértice com um vértice diferente, ao invés de permitir a um vértice ser mapeado

para si pelo isomorfismo ou agrupar mais de dois vértices em um ciclo de isomorfismos.

Um caminho ou um ciclo em um grafo anti-simétrico é dito ser regular se, para cada vértice v do caminho ou do

ciclo, o vértice correspondente σ(v) não faz parte do caminho ou do ciclo.

Grafos switch e grafos bipartidosum grafo anti-simétrico pode de forma equivalente ser definido em termos de um grafo switch (para usar a

terminologia de Cook, 2003[2]), um grafo não direcionado em que as arestas incidentes a cada vértice são divididas

em dois subgrupos. Cada vértice do grafo switch corresponde a dois vértices do grafo antissimétrico, e cada aresta do

grafo alternado corresponde a duas arestas do grafo antissimétrico. Esta equivalência é a utilizada por Goldberg e

Karzanov (1996)[] para modelar problemas de acoplamento em termos de grafos antissimétricos; nesta aplicação, os

dois subconjuntos de arestas em cada vértice são as arestas não acopladas e as arestas acopladas. Cook visualiza os

vértices de um grafo switch como pontos onde várias faixas de um trilho de trem se reúnem: se um trem entra em um

switch através de um trilho que vem de uma direção, deve sair através de um trilho na outra direção.

O problema de se encontrar curvas suaves que não se auto-interceptam entre os pontos dados em um trilho de trem

vem em testar se determinados tipos de desenhos de grafos são válidos[3] e pode ser modelado como a busca de um

caminho comum em um grafo anti-simétrico.

Um conceito relacionado é o de grafo bidirecionado de Edmonds e Johnson, 1969 [4], um grafo em que cada uma das

duas extremidades de cada aresta pode ser tanto uma cabeça ou uma cauda, independentemente do outro lado.

[4] . Reimpresso em Combinatorial Optimization —  Eureka, You Shrink!, Springer-Verlag, Lecture Notes in Computer Science 2570, 2003,

pp. 27 – 30, DOI:10.1007/3-540-36478-1 3.

Page 81: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 81/157

Grafo assimétrico 77

Grafo assimétrico

Os 8 grafos assimétricos de 6-vértices

O grafo Frucht, o menor grafo cúbico

assimétrico.

Famílias de grafos definidos por seus automorfismosdistância-transitivo distância-regular fortemente regular

simétrico (arco-transitivo) t -transitivo, t  ≥ 2

(se conectado)

transitivo nos vértices e nas arestas aresta-transitivo e regular aresta-transitivo

vértice-transitivo regular

grafo de Cayley anti-simétrico assimétrico

No campo da matemática da teoria dos grafos, um grafo não direcionado é chamado um grafo assimétrico se não

tiver simetrias não triviais.

Formalmente, um automorfismo de um grafo é uma permutação  p de seus vértices com a propriedade que quaisquer

dois vértices u e v são adjacentes se e somente se  p(u) e  p(v) são adjacentes. O mapeamento identidade de um grafo

em si é sempre um automorfismo, e é chamado de automorfismo trivial do grafo. Um grafo assimétrico é um grafo

para os quais não existem outros automorfismos.

Page 82: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 82/157

Grafo assimétrico 78

ExemplosO menor grafo não trivial assimétrico tem 6 vértices[1] O menor grafo regular assimétrico têm dez vértices; existem

grafos assimétricos de dez vértices são 4-regulares e 5-regulares[2][3].

O menor grafo cúbico assimétrico é o grafo de Frucht de doze vértices descoberto em 1939.[] De acordo com uma

versão reforçada do teorema de Frucht, há infinitamente mais grafos cúbicos assimétricos.

PropriedadesA classe de grafos assimétrica é fechada em complementos: um grafo G é assimétrico se e somente se seu

complemento o é.[1] Qualquer grafo assimétrico de n-vértices pode ser feito simétrico, adicionando e removendo um

total de, no máximo n /2 + o(n) arestas.[1]

Grafos aleatóriosA proporção de grafos sobre n vértices com automorfismo não trivial tende a zero a medida que n cresce, que é

informalmente expressado como "quase todos grafos finitos são assimétricos". Em contraste, uma vez mais

informalmente, "quase todos os grafos infinitos são simétricos". Mais especificamente, grafos aleatórios infinitos e

contáveis no modelo Erdős – Rényi são, com probabilidade 1, isomórficos ao altamente simétrico grafo Rado.[1]

ÁrvoresA menor árvore assimétrica tem sete vértices: consiste de três caminhos de comprimentos de 1, 2 e 3, ligados a um

terminal comum[4] Em contraste com a situação dos grafos, quase todas as árvores são simétricas. Em particular, se

uma árvore é escolhida de forma uniforme aleatoriamente entre todas as árvores em n nós rotulados, em seguida,

com probabilidade tendendo a 1 quando n aumenta, a árvore terá cerca de duas folhas adjacentes ao mesmo nó e terá

simetrias trocando entre essas duas folhas.[1]

[1][1] .[2][2] .

[3][3] .

[4][4] .

Page 83: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 83/157

79

Algoritmos em Grafos

Busca em largura

Ordem dos vértices explorados na busca em largura

Na teoria dos grafos, busca em largura (ou busca em

amplitude, também conhecido em inglês por

Breadth-First Search (BFS)) é um algoritmo de busca

em grafos utilizado para realizar uma busca ou

travessia num grafo e estrutura de dados do tipo árvore.

Intuitivamente, você começa pelo vértice raiz e explora

todos os vértices vizinhos. Então, para cada um desses

vértices mais próximos, exploramos os seus vértices

vizinhos inexplorados e assim por diante, até que eleencontre o alvo da busca.

Definição

Percurso realizado pelo algoritmo

Formalmente, uma busca em largura é um método de busca

não-informada (ou desinformada) que expande e examina

sistematicamente todos os vértices de um grafo direcionado ou

não-direcionado. Em outras palavras, podemos dizer que o algoritmo

realiza uma busca exaustiva num grafo passando por todas as arestas e

vértices do grafo. Sendo assim, o algoritmo deve garantir que nenhum

vértice ou aresta será visitado mais de uma vez e, para isso, utiliza uma

estrutura de dados fila para garantir a ordem de chegada dos vértices.Dessa maneira, as visitas aos vértices são realizadas através da ordem

de chegada na estrutura fila e um vértice que já foi marcado não pode

retornar a esta estrutura.

Uma analogia muito conhecida (figura ao lado) para demonstrar o funcionamento do algoritmo é pintando os

vértices de branco, cinza e preto. Os vértices na cor branca ainda não foram marcados e nem infileirados, os da cor

cinza são os vértices que estão na estrutura fila e os pretos são aqueles que já tiveram todos os seus vértices vizinhos

infileirados e marcados pelo algoritmo.

Tal mecanismo permite que se descubra todos os vértices a uma distância n do vértice raiz antes de qualquer outro

vértice de distancia n+a com a≥

1, sendo n o número de arestas para atingir qualquer outro vértice no grafoconsiderado. Essa característica do algoritmo permite construir uma árvore de distâncias mínimas (menor número de

arestas) entre o vértice raiz e os demais, sendo que o vértice responsável por infileirar o seu vizinho na cor branca

Page 84: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 84/157

Busca em largura 80

que será o vértice pai deste na representação em árvore gerada.

Características

Complexidade de Tempo

Considerando um grafo representado em listas de adjacência, o pior caso, aquele em que todos os vértices e arestassão explorados pelo algoritmo, a complexidade de tempo pode ser representada pela seguinte expressão

, onde significa o tempo total gasto nas operações sobre todas as arestas do grafo onde cada

operação requer um tempo constante sobre uma aresta, e que significa o número de operações sobre

todos os vértices que possui uma complexidade constante para cada vértice uma vez que todo vértice é

enfileirado e desinfileirado uma unica vez.

Complexidade de Espaço

Quando o número de vértices no grafo é conhecido e supondo-se a representação deste em listas de adjacência, a

complexidade de espaço do algoritmo pode ser representada por onde representa o número total de

vértices no grafo.

PseudocódigoA seguir é apresentado um pseudocódigo do algoritmo busca em largura para uma estrutura de dados grafo com lista

de adjacência. A letra F representa uma fila (FIFO) inicialmente vazia, G é o grafo em questão e s, v, w representam

vértices do grafo onde listaDeAdjacência representa a lista de adjacência de um vértice.

BuscaEmLargura

escolha uma raiz s de G

marque s

insira s em F

enquanto F não está vazia faça

seja v o primeiro vértice de F

para cada w ∈ listaDeAdjacência de v faça

se w não está marcado então

visite aresta entre v e w

marque w

insira w em F

senao se w ∈ F entao

visite aresta entre v e w

fim se

fim para

retira v de F

fim enquanto

Page 85: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 85/157

Busca em largura 81

Exemplo 1

Grafo exemplo 1

Seguindo os passos do pseudocódigo acima e iniciando no vértice 6 da

figura ao lado, o algoritmo estará com a sequência de vértices

marcados e a fila assim:

Vértices Marcados= ∅; Fila(F)=∅.

Vértices Marcados= 6; Fila(F)=6.

Vértices Marcados= 6,4; Fila(F)=6,4.

Vértices Marcados= 6,4; Fila(F)=4.Vértices Marcados= 6,4,5; Fila(F)=4,5.

Vértices Marcados= 6,4,5,3; Fila(F)=4,5,3.

Vértices Marcados= 6,4,5,3; Fila(F)=5,3.

Vértices Marcados= 6,4,5,3,1; Fila(F)=5,3,1.

Vértices Marcados= 6,4,5,3,1,2; Fila(F)=5,3,1,2.

Vértices Marcados= 6,4,5,3,1,2; Fila(F)=3,1,2.

Vértices Marcados= 6,4,5,3,1,2; Fila(F)=1,2.

Vértices Marcados= 6,4,5,3,1,2; Fila(F)=2.

Vértices Marcados= 6,4,5,3,1,2; Fila(F)=∅.

Exemplo 2Aplicando o pseudocódigo nesse grafo de cidades alemãs e iniciando o algoritmo na cidade de Frankfurt, repare que

para montar a arvore da figura foi necessário gravar na figura apenas as arestas que são processadas na primeira

condição "se" do pseudocódigo (se w não está marcado então). Caso as arestas desse exemplo não fossem valoradas

(como no primeiro exemplo) ficaria fácil encontrar a distância para o vértice raiz com o algoritmo busca em largura,

mas, para o grafo deste exemplo (que são valoradas) pesquise por Algoritmo de Dijkstra para encontrar o menor

caminho de um vértice a outro.

Page 86: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 86/157

Busca em largura 82

Exemplo de um mapa da Alemanha com algumas conexões entre as

cidades.

Árvore gerada em um algoritmo BFS começando em Frankfurt.

C

int BuscaEmLargura(Grafo *G, Fila *F, int raiz)

{

  int *verticesMarcados = (int*)malloc(G->NumVertices * 

sizeof(int));//vetor de vertices marcados

  int tamVerticesMarcados= 0;

  int vertice1;

no_lista *p; 

Page 87: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 87/157

Busca em largura 83

verticesMarcados[0] = raiz;//marca raiz

tamVerticesMarcados++;

PoeVerticeNaFila(F , raiz); //poe raiz na fila

  while(!FilaVazia(F))//enquanto a fila nao esta vazia

{

vertice1 = F->ini->vertice;//vertice que esta no inicio da fila

 

p = G->Ladj[vertice1-1].inicio;// Ladj = lista de adjacencia de

vertice1

  while(p!=NULL)//enquanto a lista de adjacencia do vertice1 nao

acaba

{

  if(!BuscaVertice(p->vertice, verticesMarcados,tamVerticesMarcados))//busca p->vertice no vetor verticesMarcados

{

verticesMarcados[tamVerticesMarcados ++] = 

p->vertice;//marcou p->vertice

PoeVerticeNaFila(F , p->vertice);//poe p->vertice na fila

 

//arestas que compoem arvore geradora mínima, aresta

(vertice1, p->vertice)

}

  else  if(WPertenceF(p->vertice, F))//se p->vertice pertence a F 

{

  //arestas (vertice1, p->vertice) que não compoem árvore

geradora mínima

}

p = p->prox;

}

RetiraVerticeFila(F);

}

  return 0;}

Exemplo de Implementação em Object Pascal program Busca_em_largura;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

Page 88: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 88/157

Busca em largura 84

vListaNos : array[1..8] of char;

  function NoEsquerdo(pNoAtual: Integer): integer;

  begin

  result := (2 * pNoAtual);

  end ;

  function NoDireito(pNoAtual: Integer): integer;

  begin

  result := (2 * pNoAtual) + 1;

  end ;

  function busca_Largura (Inicio : integer; Alvo: Char): integer;

  var

vAchou : Boolean;

vLoop : integer;

  begin

vAchou := false;vLoop := Inicio;

  Result := -1;

  if vListaNos[Inicio] = Alvo then  begin

vAchou := true;

  Result := Inicio;

  end ;

  while (not vAchou) and (vLoop <= 8) do  begin

  if vListaNos[NoEsquerdo(vLoop)] = Alvo then  begin

vAchou := true;

  Result := NoEsquerdo(vLoop);  end  else if vListaNos[NoDireito(vLoop)] = Alvo then  begin

vAchou := true;

  Result := NoDireito(vLoop);

  end ;

  inc(vLoop);

  end ;

  end ;

 begin

  { Busca em largura na árvore binária }  // Preenchimento da arvore, demostração gráfica e posicionamento na

mesma…

vListaNos[1] := 'R';  { R 1 }

vListaNos[2] := 'G';  { / \ / \ }

vListaNos[3] := 'Q';  { G Q 2 3 }

vListaNos[4] := 'Y';  { /\ /\ /\ /\ }

vListaNos[5] := 'J';  { Y J B E 4 5 6 7 }

vListaNos[6] := 'B';  { / / }

vListaNos[7] := 'E';  { P 8 }

vListaNos[8] := 'P';  // Pesquisa por elementos na árvore…

Page 89: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 89/157

Busca em largura 85

  Writeln('A letra "J" esta no no numero: '+ IntToStr(busca_Largura(2, 

'J')));

  Writeln('A letra "B" esta no no numero: '+ IntToStr(busca_Largura(1, 

'B')));

  Writeln('A letra "R" esta no no numero: '+ IntToStr(busca_Largura(1, 

'R')));

  Writeln('A letra "P" esta no no numero: '+ IntToStr(busca_Largura(4, 

'P')));

  Writeln('A letra "Y" esta no no numero: '+ IntToStr(busca_Largura(1, 

'Y')));

  Writeln('A letra "E" esta no no numero: '+ IntToStr(busca_Largura(1, 

'E')));

  Writeln('A letra "Q" esta no no numero: '+ IntToStr(busca_Largura(1, 

'Q')));

  Readln;

end .

Usos e extensões•• Achar componentes conectados

•• Achar todos os nódulos contectado a apenas um componente

•• Achar o menor caminho entre um nó raiz e os outros nós do grafo

•• Testar bipartição em grafos

O conjunto de nós alcançados pela busca em largura são os maiores componentes conectados que contém o nó

inicial. Se não houver arestas nos nós adjacentes numa mesma camada de busca, então o grafo deve conter um

número ímpar de ciclos e não ser bipartido.

Page 90: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 90/157

Busca em profundidade 86

Busca em profundidade

Ordem dos vértices explorados na busca em profundidade

Busca em profundidade (ou busca em

profundidade-primeiro, também usada a

sigla em inglês DFS) é um algoritmo usado

para realizar uma busca ou travessia numa

árvore, estrutura de árvore ou grafo.

Intuitivamente, o algoritmo começa num nó

raiz (selecionando algum nó como sendo o

raiz, no caso de um grafo) e explora tanto

quanto possível cada um dos seus ramos,

antes de retroceder(backtracking).

Definição Formal

Representação visual de uma busca em profundidade

Formalmente, um algoritmo de busca em profundidade realiza

uma busca não-informada que progride através da expansão do

primeiro nó filho da árvore de busca, e se aprofunda cada vez

mais, até que o alvo da busca seja encontrado ou até que ele se

depare com um nó que não possui filhos (nó folha). Então a buscaretrocede (backtrack) e começa no próximo nó. Numa

implementação não-recursiva, todos os nós expandidos

recentemente são adicionados a uma pilha, para realizar a

exploração.

A complexidade espacial de um algoritmo de busca em

profundidade é muito menor que a de um algoritmo de busca em

largura. A complexidade temporal de ambos algoritmos são

proporcionais ao número de vértices somados ao número de

arestas dos grafos aos quais eles atravessam.

Quando ocorrem buscas em grafos muito grandes, que não podem ser armazenadas completamente na memória, a

busca em profundidade não termina, em casos onde o comprimento de um caminho numa árvore de busca é infinito.

O simples artifício de “ lembrar quais nós já foram visitados ” não funciona, porque pode não haver memória

suficiente. Isso pode ser resolvido estabelecendo-se um limite de aumento na profundidade da árvore.

Page 91: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 91/157

Busca em profundidade 87

Exemplo

Exemplo Busca em profundidade

gráfico transversal

Para o grafo ao lado, uma busca em profundidade começando em

A, assumindo-se que as arestas esquerdas do grafo apresentado

sejam escolhidas antes das arestas direitas, e assumindo que a

busca relembre os nós previamente visitados e que não os repita

(desde que este seja um grafo pequeno), visitaremos os nós naseguinte ordem : A, B, D, F, E, C, G.

Modificando essa mesma busca, sem que nos recordemos dos nós

previamente visitados, teríamos como resultado a seguinte ordem

de visita dos nós: A, B, D, F, E, A, B, D, F, E, etc, eternamente, já

que a busca ficaria presa no ciclo A,B,D,F,E e nunca alcançaria G

ou C.

O aprofundamento iterativo previne esse looping, alcançando os

seguintes nós, nas seguintes profundidades, assumindo-se que ele

prossiga da esquerda para a direita, como mostrado abaixo:• 0: A

• 1: A (repetido), B, C, E

(Perceba que o aprofundamento iterativo agora enxergou C, ao passo que uma busca em profundidade convencional

não enxergaria.)

• 2: A, B, D, F, C, G, E, F

(Perceba que a busca ainda enxerga C, mas que ele vem depois. Perceba também que ele enxerga E via diferentes

caminhos, e passa duas vezes pelo F .)

• 3: A, B, D, F, E, C, G, E, F, B

Para esse grafo, quanto maior for a profundidade aplicada, os dois ciclos “ABFE” e “AEFB” simplesmente ficarãomaiores, antes que o algoritmo desista e tente outro ramo.

Aplicações• Achar componentes conectados

• Achar componentes fortemente conectados

•• Ordenação topológica

• Resolução de quebra-cabeças como labirinto

Pseudocódigofunction Busca_Profundidade(Inicio, Alvo)

empilha(Pilha,Inicio)

  while Pilha is not empty

  var Nodo := desempilha(Pilha)

Colore(Nodo, Cinza)

  if Nodo = Alvo

return Nodo

  for Filho in Expande(Nodo)

  if Filho.cor = Branco

empilha(Pilha, Filho)

Colore(Nodo, Preto)

Page 92: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 92/157

Caminho 88

CaminhoEm teoria de grafos, um caminho em um grafo é uma sequência de vértices tal que de cada um de seus vértices há

uma aresta para o próximo vértice da sequência. O primeiro vértice é chamado de vértice inicial e o último é

chamado de vértice final.

Definição matemáticaMatematicamente: Seja G um grafo. Um caminho em G é uma sequência de verticess de G, digamos

({vi1, v

 j1} , . . ., {v

ir, v

 jr})

tal que

v ja = v

ia+1,

para todo 1 ≤ a ≤ r  − 1.

Tipos de caminhosUm ciclo de comprimento r é um caminho constituído por r + 1 vértices, onde o primeiro vértice é igual ao último.

Note que a escolha do vértice inicial em um ciclo é arbitrária.

Um caminho sem vértices repetidos é chamado de caminho simples e um ciclo sem vértices repetidos com exceção

do inicial/final é um ciclo simples. Por vezes o termo "simples" é omitido de "caminho simples" e "ciclo simples",

embora essa não seja a regra.

Um ciclo simples que envolva todos os vértices de um grafo é chamado de caminho hamiltoniano.

Um grafo é dito conexo se para quaisquer dois vértices existe um caminho que começa num vértice e termina no

outro.

Referências• Bondy, J. A.; Murty, U. S. R. (1976). Graph Theory with Applications. North Holland. pp. 12 – 21. ISBN

0-444-19451-7.

• Diestel, Reinhard (2005). Graph Theory [1] (3rd ed. ed.). Graduate Texts in Mathematics, vol. 173,

*Springer-Verlag. pp. 6 – 9. ISBN 3-540-26182-6.

• Gibbons, A. (1985). Algorithmic Graph Theory. Cambridge University Press. pp. 5 – 6. ISBN 0-521-28881-9.

• Korte, Bernhard; Lovász, László; Prömel, Hans Jürgen; Schrijver, Alexander (Eds.) (1990). Paths, Flows, and 

VLSI-Layout . Algorithms and Combinatorics 9, Springer-Verlag. ISBN 0-387-52685-4.

Referências[1] http:/   /  www. math.uni-hamburg.  de/  home/  diestel/  books/  graph.  theory/ 

Page 93: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 93/157

Caminho euleriano 89

Caminho euleriano

O grafo das pontes de Königsberg. Este grafo

não é Euleriano, portanto, uma solução não

existe.

Cada vértice deste grafo tem um grau

par,portanto este é um grafo Euleriano. Seguindo

as arestas em ordem alfabética obtém-se um

circuito/ciclo Euleriano.

Um Caminho Euleriano é um caminho em um grafo que visita cada

aresta apenas uma vez. Com caso especial, um Circuito Euleriano é

um caminho Euleriano que começa e termina no mesmo vértice. O

conceito foi introduzido por Leonard Euler para a resolução do famoso

problema das sete pontes de Königsberg em 1736.

Grafos que possuem um circuito Euleriano são chamados Grafos

Eulerianos. Uma das principais condições para um grafo ser Euleriano

é que todos os vértices precisam ser de grau par. Esta condição é

também suficiente. Euler provou que uma condição necessária para a

existência de circuitos eulerianos é de que todos os vértices tenham

grau par, e afirmou, sem prova de que grafos conexos com todos os

vértices pares tem um circuito Euleriano. A primeira prova completa

desta última afirmação foi publicada em 1873 por Carl Hierholzer.[1]

Há, ainda, grafos com caminhos Eulerianos se houver 2 vértices de

grau ímpar. Nesse caso, ao se acrescentar uma aresta ligando estes dois

vértices, o novo grafo passa a ser Euleriano.

Pode-se assim enunciar um corolário do Teorema de Euler para

Grafos* como sendo: Um grafo G conexo possui caminho euleriano se

e somente se ele tem exatamente zero ou dois vértices de grau impar .

Não confundir com caminho hamiltoniano em que o caminho deve

passar uma vez em cada vértice.

Referências

Page 94: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 94/157

Caminho hamiltoniano 90

Caminho hamiltoniano

O caminho vermelho é hamiltoniano.

Um caminho hamiltoniano é um caminho que permite passar por

todos os vértices de um grafo G, não repetindo nenhum, ou, seja,

passar por todos uma e uma só vez por cada. Caso esse caminho seja

possível descrever um ciclo, este é denominado ciclo hamiltoniano

(ou circuito hamiltoniano) em G. E, um grafo que possua tal circuito

é chamado de grafo hamiltoniano.

O problema de decidir se um dado grafo é hamiltoniano é completo em

NP, o que significa que é pouco provável que exista um algoritmo

polinomial para o problema. Outro objetivo provavelmente ambicioso demais: mostrar que o problema está em

co-NP, ou seja, obter uma boa condição necessária e suficiente para existência de ciclo hamiltoniano.

Um problema que envolve caminhos hamiltonianos é o problema do caixeiro viajante, em que um caixeiro deseja

visitar um conjunto de N cidades (vértices), passando por cada cidade exatamente uma vez e retornando à cidade de

origem, fazendo o caminho de menor tamanho possível.

Em 2009 conseguiu-se uma resolução para este problema utilizando-se de bactérias [1] na implementação do

algoritmo, que historicamente costuma ter um custo de tempo de computação exponencial.

Definições

Um caminho Hamiltoniano (em preto) sobre um

grafo (em azul).

Um caminho Hamiltoniano ou caminho rastreável é um caminho que

visita cada vértice exatamente uma vez. Um grafo que contém um

caminho Hamiltoniano é chamado um grafo rastreável. Um grafo é

Hamilton-conectado se para cada par de vértices existe um caminho

Hamiltoniano entre os dois vértices.

Um ciclo Hamiltoniano, circuito Hamiltoniano, passeio em vértices ou

grafo ciclo é um ciclo que visita cada vértice exatamente uma vez

(exceto o vértice que é tanto o início quanto o fim, e portanto é visitado

duas vezes). Um grafo que contémum ciclo Hamiltoniano é chamado

de grafo Hamiltoniano.

Noções semelhantes podem ser definidas para grafos orientados, onde

cada aresta (arco) de um caminho ou ciclo só pode ser atravessada em

uma única direção (i.e., os vértices são conectados com as setas e as

arestas atravessadas "da cauda para a ponta").Uma decomposição Hamiltoniana é uma decomposição de arestas de um grafo em circuitos Hamiltonianos.

Page 95: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 95/157

Caminho hamiltoniano 91

Exemplos

Um ciclo Hamiltoniano em um dodecaedro.

Como todos os sólidos platônicos, o dodecaedro é

Hamiltoniano.

• Um grafo completo com mais de dois vértices é Hamiltoniano

• Todo grafo ciclo é Hamiltoniano

• Todo torneio tem um número ímpar de caminhos Hamiltonianos

• Todo sólido platônico, considerado como um grafo é Hamiltoniano

Propriedades

Um caminho hamiltoniano no grafo de Mycielski.

Qualquer ciclo hamiltoniano pode ser convertido para um caminho

Hamiltoniano, removendo-se uma de suas arestas, mas um caminho

Hamiltoniano só pode ser estendido para um ciclo hamiltoniano se suas

extremidades são adjacentes.

O grafo linha de um grafo Hamiltoniano é Hamiltoniano. O grafo linha

de um grafo Euleriano é Hamiltoniano.

Um torneio (com mais de 2 vértices) é Hamiltoniano se e somente se

ele é fortemente conectado.

Um ciclo Hamiltoniano pode ser usado como base de uma prova com

zero conhecimentos.

Número de diferentes ciclos hamiltonianos para um grafo completo =

(n-1)! / 2.

Número de diferentes ciclos hamiltonianos para um grafo orientado completo = (n-1)!.

[1] Computador feito com bactérias resolve problemas matemáticos (http:/   /  tecnologia.  terra. com. br/  interna/ 

0,,OI3896704-EI4801,00-Computador+  feito+ com+ bacterias+ resolve+ problemas+ matematicos. html) Terra Tecnologia, acessado em 31

de julho de 2009

Ligações externas• Solução do problema utilizando bactérias (http:/   /  tecnologia.terra. com. br/  interna/ 

0,,OI3896704-EI4801,00-Computador+ feito+ com+ bacterias+ resolve+ problemas+ matematicos. html)

Page 96: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 96/157

Ordenação topológica 92

Ordenação topológicaEm teoria dos grafos, uma ordenação topológica de um digrafo acíclico (DAG) é uma ordem linear de seus nós em

que cada nó vem antes de todos nós para os quais este tenha arestas de saída. Cada DAG tem uma ou mais

ordenações topológicas.

Mais formalmente, define-se a relação acessibilidade R sobre os nós do DAG tal que xRy se e somente se existe um

caminho dirigido de x para y. Então, R é uma ordem parcial, e uma ordenação topológica é uma extensão linear desta

ordem parcial, isto é, uma ordem total compatível com a ordem parcial.

ExemplosA aplicação canônica da ordenação topológica (ordem topológica) está na programação de uma seqüência de

trabalhos ou tarefas; tem uso potencial todas as vezes em que o problema abordado envolve uma ordem parcial[1];

algoritmos de ordenação topológica começaram a ser estudados no início dos anos 1960 no contexto da técnica

PERT para a agendamento de tarefas em gerenciamento de projetos.[2] Os trabalhos são representados por vértices, e

existe uma aresta de  x para  y se o trabalho  x deve estar concluído antes do trabalho  y poder ser iniciado (porexemplo, ao lavar roupas, a máquina de lavar deve terminar antes de se poder colocar as roupas para secar). Em

seguida, uma ordenação topológica dá uma ordem na qual se possa realizar os trabalhos.

Em informática, as aplicações deste tipo surgem em agendamentos de instruções, ordenação de fórmulas de

avaliação de células quando recalculando os valores de fórmulas em planilhas, síntese lógica, determinação da ordem

das tarefas de compilação para executar em arquivos "make", e resolução de dependências de símbolos em ligadores.

O grafo mostrado à esquerda tem muitas ordenações topológicas, incluindo:

•• 7, 5, 3, 11, 8, 2, 9, 10 (visual esquerda-para-direita, de-cima-para-baixo)

•• 3, 5, 7, 8, 11, 2, 9, 10 (vértice de menor número disponível primeiro)

•• 3, 7, 8, 5, 11, 10, 2, 9

•• 5, 7, 3, 8, 11, 10, 9, 2 (menor número de arestas primeirofirst)

•• 7, 5, 11, 3, 10, 8, 9, 2 (vértice de maior número disponível primeiro)

•• 7, 5, 11, 2, 3, 8, 9, 10

AlgoritmosOs algoritmos usuais de ordenação topológica tem tempo de execução linear no número de nós, mais o número de

arestas (O(|V|+|E|)).

Um desses algoritmos, descrito pela primeira vez por Kahn[3], trabalha escolhendo vértices na mesma ordem da

eventual ordenação topológica. Primeiro, encontra uma lista de nós "íniciais", que não tem arestas de entrada e os

insere em um conjunto S; pelo menos um nó devem existir se o grafo é acíclico. Então:

L ← Lista vazia que irá conter os elementos ordenados

S ← Conjunto de todos os nós sem arestas de entrada

enquanto S é não-vazio faça

remova um nodo n de S

insira n em L

Page 97: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 97/157

Ordenação topológica 93

   para cada nodo m com uma aresta e de n até m faça

remova a aresta e do grafo

  se m não tem mais arestas de entrada então

insira m em S

se o grafo tem arestas então

escrever mensagem de erro (grafo tem pelo menos um ciclo)

senão 

escrever mensagem (ordenação topológica proposta: L)

Se o grafo é um digrafo acíclico (DAG), a solução está contida na lista L (a solução não é única). Caso contrário, o

grafo tem pelo menos um ciclo e, portanto, uma ordenação topológica é impossível.

Note-se que, reflectindo a não-exclusividade da ordenação resultante, a estrutura S pode ser simplesmente um

conjunto ou uma fila ou uma pilha. Dependendo da ordem em que os nodos n são removidos do conjunto S, uma

solução diferente é criada.

Um algoritmo alternativo para a ordenação topológica é baseado em uma busca em profundidade. Para este

algoritmo, as arestas apontam na direção oposta, como o algoritmo anterior (e no sentido oposto ao mostrado nodiagrama na seção de exemplos acima). Existe uma aresta de x para y se a tarefa  x depende da tarefa  y (em outras

palavras, se a tarefa  y deve ser concluída antes da tarefa  x poder ser iniciada). O algoritmo faz um loop através de

cada nó do grafo, em uma ordem arbitrária, iniciando uma busca em profundidade que termina quando se atinge

qualquer nó que já foi visto desde o início da ordenação topológica:

L ← Lista vazia que irá conter os elementos ordenados

S ← Conjunto de todos os nós sem arestas de entrada

função visita(nodo n)

  se n não foi visitado ainda então

marque n como visitado

   para cada nodo m com uma aresta de n para m faça

visite(m)

adicione n em L

 para cada nodo n em S faça

visite(n)

Note que cada nodo n é adicionado à lista de saída L somente após considerar todos os outros nodos dos quais n

depende (todos os nodos descendentes de n no grafo). Especificamente, quando o algoritmo acrescenta o nodo n,

temos a garantia que todos os nodos dos quais n depende já estão na lista de saída L: eles foram adicionados a Ltanto pela chamada recursiva anterior à visite(), ou por uma chamada anterior à visite(). Uma vez que cada aresta e

nodo é visitado uma vez, o algoritmo executa em tempo linear. Note que o simples pseudocódigo acima não

consegue detectar o caso de erro, onde o grafo de entrada contém ciclos. O algoritmo pode ser refinado para detectar

os ciclos, observando nodos que são visitados mais de uma vez durante toda a seqüência de chamadas recursivas

aninhadas à visite() (por exemplo, passar uma lista adiante como um argumento extra para visite(), indicando que

nodos já foram visitados na pilha de chamada corrente).

Este algoritmo de busca em profundidade é o descrito por Cormen, Leiserson, Rivest e Stein[4]; parece ter sido

descrito pela primeira vez em artigo por Tarjan[5]

Page 98: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 98/157

Ordenação topológica 94

UnicidadeSe uma ordenação topológica tem a propriedade de todos os pares de vértices consecutivos na ordem de classificação

serem conectados por arestas, essas arestas formam um caminho hamiltoniano dirigido no DAG. Se existe um

caminho Hamiltoniano, a ordenação topológica é única, nenhuma outra ordem respeita as arestas caminho.

Inversamente, se uma ordenação topológica não formar um caminho Hamiltoniano, o DAG terá duas ou mais

ordenações topológicas válidas, porque neste caso, é sempre possível formar-se uma segunda ordenação válida ao setrocar dois vértices consecutivos, que não são ligados por uma aresta, uns com os outros. Portanto, é possível testar

em tempo polinomial se existe uma única ordenação, e se existe um caminho hamiltoniano, apesar da característica

NP-hard do problema do caminho hamiltoniano para grafos dirigidos mais gerais[6]

Ligações externas• Dicionário (NIST) de Algoritmos e Estruturas de Dados: ordenação topológica [7]

[2][2] .

[3][3] *.

[5][5] .

[6][6] .[7] http:/   /  www. nist.gov/  dads/  HTML/  topologicalSort.  html

Algoritmo de Bellman-FordO Algoritmo de Bellman-Ford é um algoritmo de busca de caminho mínimo em um dígrafo ponderado, ou seja,

cujas arestas têm peso, inclusive negativo. O Algoritmo de Dijkstra resolve o mesmo problema, em um tempo

menor, porém exige que todas as arestas tenham pesos positivos. Portanto, o algoritmo de Bellman-Ford é

normalmente usado apenas quando existem arestas de peso negativo.

O algoritmo de Bellman-Ford executa em tempo onde v é o número de vértices e a o número de arestas.

Pseudocódigofunção BellmanFord(lista vértices, lista arestas, vértice origem)

  // Esta implementação recebe um grafo representado como uma

  // lista de vértices e arestas e modifica os vértices para

  // que que seus atributos distância e anterior  armazenem

// os caminhos mais curtos.

  // Passo 1: Inicializar o grafo   para cada vértice v em vértices faça:

  se v é origem então:

v.distância = 0

  senão:

v.distância := infinito

v.anterior := nulo

  // Passo 2: Ajustar as arestas repetidamente

  repita tamanho (vértices) vezes:

   para cada aresta uv em arestas faça:u := uv.origem

Page 99: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 99/157

Algoritmo de Bellman-Ford 95

v := uv.destino // uv é a aresta de u para v 

  se v.distância > u.distância + uv.peso então:

v.distância := u.distância + uv.peso

v.anterior := u

  // Passo 3: Verificar a existência de ciclos com peso negativo

   para cada aresta uv em arestas faça:

u := uv.origem

v := uv.destino

  se v.distância < u.distância + uv.peso então:

  erro "O grafo contém um ciclo de peso negativo."

Código em C++ 

#include <iostream>

#define INFINITY 0x3f3f3f3f

#define NODOS 1000

using namespace std;

typedef struct {

int source;

  int dest; //destino

  int weight; //peso

} Edge;

int distancia[NODOS];

 

void BellmanFord(Edge edges[], int edgecount, int nodecount, int 

source) {

int i,j,trocou;

  for (i = 0; i < nodecount; i++) {

distancia[i] = INFINITY;

}

distancia[source]=0;

  for (i = 0; i < nodecount; i++) {

trocou = 0;

  for (j = 0; j < edgecount; j++) {

  if (distancia[edges[j].dest] > distancia[edges[j].source] + 

edges[j].weight) {

distancia[edges[j].dest] = distancia[edges[j].source] + 

edges[j].weight;

trocou=1;

}

}

  // se nenhuma iteração teve efeito, futuras iterações estão

dispensadas

Page 100: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 100/157

Algoritmo de Bellman-Ford 96

  if (trocou==0) break;

}

  // usado somente para detectar ciclos negativos (dispensável)

  for (i = 0; i < edgecount; i++) {

  if (distancia[edges[i].dest] > distancia[edges[i].source] + 

edges[i].weight) {

cout << "Ciclo negativo de pesos de arestas detectado" << endl;

   break;

}

}

  for (i = 0; i < nodecount; i++) {

cout << "A distancia mais curta entre os nodos " << source << " e " << i <<" eh " << distancia[i] << endl;

}

}

 

int main (void){

  // Este caso de teste produzira as distancias entre o nodo 0 e os

outros nodos

Edge Arestas[10] = {{0, 1, 5}, {0,2, 8}, {0,3, -4}, {1,0, -2},

{2, 1, -3}, {2,3, 9}, {3,1, 7}, {3,4, 2},

{4,0, 6}, {4,2, 7}};

  // BellmanFord(Estrutura, arestas, vertices,origem);

BellmanFord(Arestas, 10, 5, 0);

  return 0;

}

Page 101: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 101/157

Algoritmo A* 97

Algoritmo A*Algoritmo A* (Lê-se: A-estrela) é um algoritmo para Busca de Caminho. Ele busca o caminho em um grafo de um

vértice inicial até um vértice final. Ele é a combinação de aproximações heurísticas como do algoritmo Best-first

Search e da formalidade do Algoritmo de Dijkstra.

O algoritmo foi descrito pela primeira vez em 1968 por Peter Hart, Nils Nilsson, e Bertram Raphael. Na publicação

deles, ele foi chamado de algoritmo A; usando este algoritmo com uma heurística apropriada atinge-se um

comportamento ótimo, e passou a ser conhecido por A*.

Sua aplicação vai desde aplicativos para encontrar rotas de deslocamento entre localidades a resolução de problemas,

como a resolução de um quebra-cabeças. Ele é muito usado em jogos.

AlgoritmoSejam

Q = conjunto de nós a serem pesquisados;

S = o estado inicial da busca

Faça:

1. Inicialize Q com o nó de busca (S) como única entrada;

2. Se Q está vazio, interrompa. Se não, escolha o melhor elemento de Q;

3. Se o estado (n) é um objetivo, retorne n;

4. (De outro modo) Remova n de Q;

5. Encontre os descendentes do estado (n) que não estão em visitados e crie todas as extensões de n para cada

descendente;

6. Adicione os caminhos estendidos a Q e vá ao passo 2;

caminhos expandidos;

Uma estimativa que sempre subestima o comprimento real do caminho ate o objetivo é chamada de admissível. O

uso de uma estimativa admissível garante que a busca de custo-uniforme ainda encontrará o menor caminho.

Ligações externas• (em português) A* Pathfinding para Iniciantes [1]

• (em português) Projeto de Pesquisa de Algoritmos de Busca [2]

• (em inglês) Amit's A* Pages -- Path finding [3] Texto bastante completo sobre busca de caminhos (Path finding)

usando o Algoritmo A*

Referências[1] http:/   /  www. policyalmanac.  org/  games/  aStarTutorial_port.  htm

[2] http:/   /  www2. dc. uel.br/  ~rarosa/  pixel/  path.  html

[3] http:/   /  theory.  stanford.  edu/  ~amitp/  GameProgramming/ 

Page 102: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 102/157

Algoritmo de Floyd-Warshall 98

Algoritmo de Floyd-WarshallNa ciência da computação, o algoritmo de Floyd-Warshall (às vezes chamado de algoritmo de Roy-Floyd ou

algoritmo de Warshall) é um algoritmo que resolve o problema de calcular o caminho mais curto entre todos os

pares de vértices em um grafo orientado (com direção) e valorado (com peso). Sua complexidade é cúbica.

Definição

O algoritmo de Floyd-Warshall recebe como entrada uma matriz de adjacência que representa um grafo

orientado e valorado. O valor de um caminho entre dois vértices é a soma dos valores de todas as arestas ao longo

desse caminho. As arestas do grafo podem ter valores negativos, mas o grafo não pode conter nenhum ciclo de

valor negativo. O algoritmo calcula, para cada par de vértices, o menor de todos os caminhos entre os vértices. Por

exemplo, o caminho de menor custo. Sua ordem de complexidade é .

O algoritmo se baseia nos passos abaixo:

• Assumindo que os vértices de um grafo orientado são , considere um subconjunto

;• Para qualquer par de vértices em , considere todos os caminhos de a cujos vértices intermediários

pertencem ao subconjunto , e como o mais curto de todos eles;• O algoritmo explora um relacionamento entre o caminho e os caminhos mais curtos de a com todos os

vértices intermediários em ;• O relacionamento depende de ser ou não um vértice intermediário do caminho .

Abaixo segue uma implementação em pseudocódigo do algoritmo de Floyd-Warshall:

ROTINA fw(Inteiro[1..n,1..n] grafo)

# Inicialização

VAR Inteiro[1..n,1..n] dist := grafoVAR Inteiro[1..n,1..n] pred

PARA i DE 1 A n

PARA j DE 1 A n

SE dist[i,j] < Infinito ENTÃO

pred[i,j] := i

# Laço principal do algoritmo

PARA k DE 1 A n

PARA i DE 1 A n

PARA j DE 1 A n

SE dist[i,j] > dist[i,k] + dist[k,j] ENTÃOdist[i,j] = dist[i,k] + dist[k,j]

pred[i,j] = pred[k,j]

RETORNE dist

Page 103: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 103/157

Algoritmo de Floyd-Warshall 99

AplicaçõesO algoritmo de Floyd-Warshall pode ser utilizado para resolver os problemas abaixo:

•• Caminhos mais curtos em grafos orientados (algoritmo de Floyd). Para funcionar, os valores de todas as arestas

são configurados para o mesmo número positivo. Esse número é normalmente escolhido como único, tanto é que

o valor de um caminho coincide com o número de arestas ao longo desse caminho;

• Proximidade transitiva de grafos orientados (algoritmo de Warshall). Na formulação original deste último, o grafose torna desvalorado (perde valores) e é representado por uma matriz booleana de adjacência. Depois, a operação

de soma é substituída por conjunção lógica (E) e a operação de subtração por disjunção lógica (OU);

• Encontrar uma expressão regular denotando a linguagem regular aceita por um autômato finito (algoritmo de

Kleene);

•• Inversões de matrizes de números reais (algoritmo de Gauss-Jordan);

•• Roteamento otimizado. Nesta aplicação, o interesse é encontrar o caminho com o máximo fluxo entre dois

vértices. Isto significa que, em vez de calcular o mínimo no pseudocódigo acima, calcula-se o máximo. Os pesos

das arestas representam constantes fixas de fluxo. Valores do caminho representam gargalos, logo a operação de

soma acima é substituída pela operação de subtração;

• Testar se um grafo não-orientado é bipartido.

Ligações externas• Uma implementação em Javascript está disponível em Alex Le's Blog [1]

• Algoritmo de Floyd-Warshall em C++ [2]

Referências[1] http:/   /  alexle. net/  stuff/  floyd-algorithm/ 

[2] http:/   /  lampiao.  ic. unicamp.  br/  maratona/  ?name=implementa#toc15

Page 104: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 104/157

Algoritmo de Johnson 100

Algoritmo de Johnson

Algoritmo deJohnson

classe Algoritmo de busca

estrutura dedados

Grafo

Algoritmos

Algoritmo de Johnson é uma forma de encontrar o menor caminho entre entre dois pontos. Ele permite que algumas

bordas tenham número negativo, mas ciclos negativos não devem existir. Este algoritmo trabalha com base no

Algoritmo de Bellman-Ford, para computar uma transformação de um grafo de entrada, que remove todas os pesos

negativos, permitindo o uso do algoritmo de Dijkstra no grafo transformado. Recebe esse nome em homenagem a

Donald B. Johnson, o primeiro a descreve-lo, em 1977.

Descrição do algoritmoÉ formado pelos seguintes passos:

1. Primeiro, um novo nó q é

adicionado ao grafo, conectado com

peso zero (0) com cada um dos

outros nós.

2. Segundo, é usado o algoritmo de

Bellman – Ford, começando a partir

do novo nó q, para encontrar cada

um dos vértices v, o de menor peso

h(v) do caminho de q para v. Se esse

passo detectar um ciclo negativo, o algoritmo é terminado.

3. O próxima borda do grafo original é reponderada usando os valores calculados pelo algoritmo Bellman – Ford:

uma borda de u para v, tendo comprimento w(u,v), é dada pelo novo comprimento w(u,v) + h(u) −h(v).

4. Finalmente, q é removido, e o algoritmo de Dijkstra é usado para encontrar o menor caminho para cada um dos

nós s para todos os outros vértices no grafo reponderado.

Veja tambémalgoritmo de Bellman-Ford

Algoritmo de Dijkstra

Problema do caminho mais curto

Grafo

Ligações externas• Boost: All Pairs Shortest Paths [1]

Page 105: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 105/157

Algoritmo de Johnson 101

Referências[1] http:/   /  www. boost.  org/  doc/  libs/  1_40_0/  libs/  graph/  doc/   johnson_all_pairs_shortest.  html

Page 106: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 106/157

102

Algoritmos para obter a árvore de extensãomínima

Algoritmo de KruskalO algoritmo de Kruskal é um algoritmo em teoria dos grafos que busca uma árvore geradora mínima para um grafo

conexo com pesos. Isto significa que ele encontra um subconjunto das arestas que forma uma árvore que inclui todos

os vértices, onde o peso total, dado pela soma dos pesos das arestas da árvore, é minimizado. Se o grafo não for

conexo, então ele encontra uma  floresta geradora mínima (uma árvore geradora mínima para cada componente

conexo do grafo). O algoritmo de Kruskal é um exemplo de um algoritmo guloso (também conhecido como

ganancioso ou greedy).

Seu funcionamento é mostrado a seguir:• crie uma floresta F (um conjunto de árvores), onde cada vértice no grafo é uma árvore separada

• crie um conjunto S contendo todas as arestas do grafo

• enquanto S for não-vazio, faça:

• remova uma aresta com peso mínimo de S 

•• se essa aresta conecta duas árvores diferentes, adicione-a à floresta, combinando duas árvores numa única

árvore parcial

•• do contrário, descarte a aresta

Ao fim do algoritmo, a floresta tem apenas um componente e forma uma árvore geradora mínima do grafo.

Com o uso de uma estrutura de dados aceitável, o algoritmo de Kruskal pode ser demonstrado que executa em tempoO (m log n), onde m é o número de arestas e n o número de vértices.

Exemplo

Grafo original a ser computado o algoritmo de Kruskal. Os números representam o peso nas arestas, e no

momento não existe aresta selecionada.

As arestas AD e CE são as mais leves do grafo e ambas podem ser selecionadas. É escolhido ao acaso AD.

Agora a aresta CE é a mais leve. Já que ele não forma um laço com AD ela é selecionada.

Page 107: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 107/157

Algoritmo de Kruskal 103

A próxima aresta é a DF com peso 6. Ela não forma um laço com as arestas já selecionadas então ela é

selecionada.

Agora duas arestas com peso 7 podem ser selecionadas e uma é escolhida ao acaso. A aresta BD é marcadapois forma um laço com as outras arestas já selecionadas.

Agora a outra aresta de peso 7 é selecionada pois cobre todos os requisitos de seleção. Similarmente ao

passo anterior, outras arestas são marcadas para não serem selecionadas, pois resultariam em um laço.

Para finalizar é selecionada a aresta EG com peso 9. FG é marcada. Já que agora todas as arestas

disponíveis formariam um laço, chega-se ao final do algoritmo e a árvore geradora mínima é encontrada.

Algoritmo de PrimNa ciência da computação o algoritmo de Prim é um algoritmo guloso (greedy algorithm) empregado para

encontrar uma árvore geradora mínima (minimal spanning tree) num grafo conectado, valorado e não direcionado.

Isso significa que o algoritmo encontra um subgrafo do grafo original no qual a soma total das arestas é minimizada

e todos os vértices estão interligados. O algoritmo foi desenvolvido em 1930 pelo matemático Vojtěch Jarník e

depois pelo cientista da computação Robert C. Prim em 1957 e redescoberto por Edsger Dijkstra em 1959.

Outros algoritmos conhecidos para encontrar árvores geradoras mínimas são o algoritmo de Kruskal e algoritmo de

Boruvka. No entanto estes algoritmos podem ser empregados em grafos desconexos, enquanto o algoritmo de Prim

precisa de um grafo conexo.

Page 108: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 108/157

Algoritmo de Prim 104

Descrição

Figura 1: passo a passo da execução do algoritmo de Prim iniciado

pelo vértice 0

O algoritmo de Prim encontra uma árvore geradora

mínima para um grafo desde que ele seja valorado e

não direcionado. Por exemplo, se na  figura 1 os

vértices deste grafo representassem cidades e as arestas

fossem estradas de terra que interligassem estascidades, como poderíamos determinar quais estradas

asfaltar gastando a menor quantidade de asfalto

possível para interligar todas as cidades. O algoritmo

de Prim neste caso fornecerá uma resposta ótima para

este problema que não necessariamente é única. A

etapa  f) da figura 1 demonstra como estas cidades

devem ser conectadas com as arestas em negrito.

Algoritmo genéricoUm algoritmo genérico para o algoritmo de Prim é

dado da seguinte forma:

 Escolha um vértice S para iniciar o subgrafo

enquanto há vértices que não estão no

subgrafo

selecione uma aresta segura

insira a aresta segura e seu vértice

no subgrafo

ComplexidadeA complexidade do algoritmo de Prim pode mudar de acordo com a estrutura de dados utilizada para representar o

grafo. As implementações mais comuns para um grafo são por listas de adjacência e por matrizes de adjacência e

suas respectivas complexidades e no pior caso.

Exemplo de execuçãoRepare neste exemplo de execução do algoritmo como as arestas são escolhidas para entrar no subgrafo. O conjunto

V\U são os vértices que ainda não entraram no subgrafo, o conjunto U são os vértices que já estão no subgrafo, as

arestas possíveis é uma lista de arestas que poderiam ser incluidas no subgrafo, pois conectam vértices contidos no

subgrafo com os que ainda não estão e as arestas incluídas são aquelas que já estão no subgrafo. Dessa maneira e

segundo o algoritmo genérico dado acima, para escolhermos uma aresta segura devemos observar o conjunto de

arestas possíveis e selecionar aquelas que não formam ciclos com o subgrafo até entao formado e cujo peso é o

mínimo possível naquele momento. Se uma aresta apresentar todos estes quesitos podemos considerá-la uma aresta

segura.

Page 109: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 109/157

Algoritmo de Prim 105

Imagem Arestas

incluídas

no subgrafo

U Arestas

possíveis

V \ U Descrição

{} {} {A,B,C,D,E,F,G} Este é o grafo original. Os números próximos das arestas

significam o seu peso.

{DA} {D} {D,A} = 5V

{D,B}=9

{D,E}=15

{D,F}=6

{A,B,C,E,F,G} O vértice D foi escolhido como ponto inicial do algoritmo.

Vértices A, B, E e F estão conectados com D através de

uma única aresta. A é o vértice mais próximo de D e,

portanto a aresta AD será escolhida para formar o

subgrafo.

{DA, DF} {A,D} {D,B}=9

{D,E}=15

{D,F}=6V

{A,B}=7

{B,C,E,F,G} O próximo vértice escolhido é o mais próximo de D ou A.

B está a uma distância 9 de D, E numa distância 15 e F

numa distância 6. E A está a uma distância de 7 de B.

Logo devemos escolher a aresta DF, pois é o menor peso.

{DA, DF,

AB}

{A,D,F} {D,B}=9

{D,E}=15

{A,B}=7V{F,E}=8

{F,G}=11

{B,C,E,G} Agora devemos escolher o vértice mais próximo dos

vértices A, D ou F. A aresta em questão é a aresta AB.

{DA, DF,

AB, BE}

{A,B,D,F} {B,C}= 8

{B,E}=7V

{D,B}=9ciclo

{D,E}=15

{F,E}=8

{F,G}=11

{C,E,G} Agora podemos escolher entre os vértices C, E, e G. C

está a uma distância de 8 de B, E está a uma distância 7 de

B e G está a 11 de F. E é o mais próximo do subgrafo e,

portanto escolhemos a aresta BE.

{DA, DF,

AB, BE, EC}

{A,B,D,E,F} {B,C}=8

{D,B}=9ciclo

{D,E}=15ciclo{E,C}=5V

{E,G}=9

{F,E}=8 ciclo

{F,G}=11

{C,G} Restam somente os vértices C e G. C está a uma distância

5 de E e de G a E 9. C é escolhido, então a aresta EC

entra no subgrafo construído.

{DA, DF,

AB, BE, EC,

EG}

{A,B,C,D,E,F} {B,C}=8ciclo

{D,B}=9ciclo

{D,E}=15ciclo

{E,G}=9V

{F,E}=8ciclo

{F,G}=11

{G} Agora só resta o vértice G. Ele está a uma distância de 11

de F, e 9 de E. E é o mais próximo, então G entra no

subgrafo conectado pela aresta EG.

{DA, DF,

AB, BE, EC,

EG}

{A,B,C,D,E,F,G} {B,C}=8 ciclo

{D,B}=9 ciclo

{D,E}=15

ciclo

{F,E}=8 ciclo

{F,G}=11 ciclo

{} Aqui está o fim do algoritmo e o subgrafo formado pelas

arestas em verde representam a árvore geradora mínima.

Nesse caso esta árvore apresenta a soma de todas as suas

arestas o número 39.

Page 110: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 110/157

Algoritmo de Prim 106

Implementação em PHP 

$origem = array( 1 => 1,1,2,2,2,3,4,4,5);

$destino = array( 1 => 2,3,3,4,5,5,6,5,6);

$custo = array( 1 => 1,3,1,2,3,2,3,-3,2);

$nos = 6;

$narcos = 9;

 

// Define o infinito como sendo a soma de todos os custos

$infinito = array_sum($custo);

 

// Imprimindo origem destino e custo

echo utf8_decode("Grafo:<br>");

 

for($i =1 ; $i <= count($origem) ; $i++) {

echo utf8_decode("$origem[$i] $destino[$i] $custo[$i]<br>");

}

 

// ------ Passo inicial

 

// Seta os valores de T

for($i =1 ; $i <= 6 ; $i++) {

if($i == 1) {

$t[$i] = $i;

} else {

$t[$i] = "nulo";

}

}

 

// Seta os valores de V

for($i =1 ; $i <= 6 ; $i++) {

if($i == 1) {

$v[$i] = "nulo";

} else {

$v[$i] = $i;

}

}

 

echo utf8_decode("Início");

echo utf8_decode("<br> T: ");

print_r($t);

echo utf8_decode("<br> V: ");

print_r($v);

echo utf8_decode("<br>");

 

// ------ Fim do passo inicial

$total_nos = count($origem);

Page 111: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 111/157

Algoritmo de Prim 107

for($x =1 ; $x <= ($nos-1) ; $x++) {

// Verifica origem -> destino

$minimo1 = $infinito;

for($i =1 ; $i <= $narcos ; $i++) {

for($j =1 ; $j <= $nos ; $j++) {

if($origem[$i] == $t[$j]) {

for($k =1 ; $k <= $nos ; $k++) {

if($destino[$i] == $v[$k]) {

if($custo[$i] < $minimo1) {

$minimo1 =

$custo[$i];

$aux1 = $i;

}

}

}

}}

}

 

// Verifica destino -> origem

$minimo2 = $infinito;

for($i =1 ; $i <= $narcos ; $i++) {

for($j =1 ; $j <= $nos ; $j++) {

if($destino[$i] == $t[$j]) {

for($k =1 ; $k <= $nos ; $k++) {

if($origem[$i] == $v[$k]) {if($custo[$i] < $minimo2) {

$minimo2 =

$custo[$i];

$aux2 = $i;

}

}

}

}

}

if($minimo2 < $minimo1) {

$cont = 1;

$minimo = $minimo1;

$aux = $aux1;

echo utf8_decode("<br> Aresta ($origem[$aux],$destino[$aux])

escolhida de custo $custo[$aux]");

} else {

$minimo = $minimo2;

$aux = $aux2;echo utf8_decode("<br> Aresta ($destino[$aux],$origem[$aux])

Page 112: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 112/157

Algoritmo de Prim 108

escolhida de custo $custo[$aux]");

$cont = 2;

}

if($cont == 1) {

$t[$destino[$aux]] = $destino[$aux];

$v[$destino[$aux]] = "nulo";

} else {

$t[$origem[$aux]] = $origem[$aux];

$v[$origem[$aux]] = "nulo";

}

 

echo utf8_decode("<br> ".$x."° iteração");

echo utf8_decode("<br> T: ");

print_r($t);

echo utf8_decode("<br> V: ");

print_r($v);}

Bibliografia• Cormen, Thomas; Stein, Clifford. Introduction to Algorithms (em inglês). 2 ed. [S.l.]: MIT Press and

McGraw-Hill, 2001. Capítulo: 23, ISBN 0-262-03293-7

Ligações Externas• Algoritmo de Prim (http:/   /  www.mincel.com/   java/  prim.html)

• Exemplo animado de um algoritmo de Prim (http:/   /  students.ceid. upatras. gr/  ~papagel/  project/  prim.htm)

• Demonstração em Python de uma árvore mínima (http:/  

 /  

people. 

csail.mit. 

edu/  

rivest/  

programs. 

html)• Implementção em Java do algoritmo de Prim (http:/   /  code.google. com/  p/  annas/  )

• Implementação em C# do algoritmo de Prim (http:/   /  code. google. com/  p/  ngenerics/  )

Page 113: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 113/157

Algoritmo de Dijkstra 109

Algoritmo de Dijkstra

Algoritmo de Dijkstra

classe Algoritmo de busca

estrutura de dados Grafo

complexidade pior

casoAlgoritmos

O algoritmo de Dijkstra, concebido pelo cientista da computação holandês Edsger Dijkstra em 1956 e publicado

em 1959[][1], soluciona o problema do caminho mais curto num grafo dirigido ou não dirigido com arestas de peso

não negativo, em tempo computacional O([m+n]log n) onde m é o número de arestas e n é o número de vértices. O

algoritmo que serve para resolver o mesmo problema em um grafo com pesos negativos é o algoritmo de

Bellman-Ford, que possui maior tempo de execução que o Dijkstra.

O algoritmo de Dijkstra assemelha-se ao BFS, mas é um algoritmo guloso, ou seja, toma a decisão que parece

ótima no momento. Para a teoria dos grafos uma "estratégia gulosa" é conveniente já que sendo P um menor

caminho entre 2 vértices U e V, todo sub-caminho de P é um menor caminho entre 2 vértices pertencentes aocaminho P, desta forma construímos os melhores caminhos dos vértices alcançáveis pelo vértice inicial

determinando todos os melhores caminhos intermediários. Nota: diz-se 'um menor caminho' pois caso existam 2

'menores caminhos' apenas um será descoberto.

O algoritmo considera um conjunto S de menores caminhos, iniciado com um vértice inicial I. A cada passo do

algoritmo busca-se nas adjacências dos vértices pertencentes a S aquele vértice com menor distância relativa a I e

adiciona-o a S e, então, repetindo os passos até que todos os vértices alcançáveis por I estejam em S. Arestas que

ligam vértices já pertencentes a S são desconsideradas.

Um exemplo prático do problema que pode ser resolvido pelo algoritmo de Dijkstra é: alguém precisa se deslocar de

uma cidade para outra. Para isso, ela dispõe de várias estradas, que passam por diversas cidades. Qual delas oferece

uma trajetória de menor caminho?

Algoritmo de Dijkstra• 1º passo: iniciam-se os valores:

para todo v ∈ V[G]

d[v]← ∞

π[v] ← nulo

d[s] ← 0

V[G] é o conjunto de vértices(v) que formam o Grafo G. d[v] é o vetor de distâncias de s até cada v. Admitindo-se apior estimativa possível, o caminho infinito. π[v] identifica o vértice de onde se origina uma conexão até v de

Page 114: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 114/157

Algoritmo de Dijkstra 110

maneira a formar um caminho mínimo.

• 2º passo: temos que usar o conjunto Q, cujos vértices ainda não contém o custo do menor caminho d[v]

determinado.

Q ← V[G]

• 3º passo: realizamos uma série de relaxamentos das arestas, de acordo com o código:enquanto Q ≠ ø

u ← extrair-mín(Q) //Q ← Q - {u}

para cada v adjacente a u

se d[v] > d[u] + w(u, v) //relaxe (u, v)

então d[v] ← d[u] + w(u, v)

π[v] ← u

Q ← Q ∪ {v}

w(u, v) é o peso(weight) da aresta que vai de u a v.

u e v são vértices quaisquer e s é o vértice inicial.extrair-mín(Q), pode usar um heap de mínimo ou uma lista de vértices onde se extrai o elemento u com menor valor

d[u].

No final do algoritmo teremos o menor caminho entre s e qualquer outro vértice de G. O algoritmo leva tempo O(m

+ n log n) caso seja usado um heap de Fibonacci, O(m log n) caso seja usado um heap binário e O(n²) caso seja

usado um vetor para armazenar Q.

Implementação em C/C++Implementação em C utilizando uma matriz de adjacências. Dependendo da quantidade limite de vértices (MAXV)

pode se tornar ineficiente quanto ao uso de memória, sendo recomendado usar uma lista de adjacências.#include <string.h> //memset

// MAXV é uma constante que define a quantidade máxima de vértices

#define MAXV 100

// Matriz de adjacências

// Se MAdj[i][j] > 0, então há aresta que liga 'i' a 'j' com custo MAdj[i][j].

int MAdj[MAXV][MAXV];

// Armazena a distância mínima partindo de um vértice 'i' até todos os outros vértices

// dis[j] representa a menor distância de 'i' a 'j'.

int dis[MAXV];

// Calcula as distâncias de 'Vi' a todos os outros vértices de um grafo com 'V' vértices e armazena-as em dis[]

void dijkstra (int Vi, int V)

{

// vis[i] informa se o vértice 'i' já foi visitado/analisado ou não (inicialmente nenhum vértice foi)

char vis[MAXV];

memset (vis, 0, sizeof (vis));

// Inicialmente afirmamos que a menor distância encontrada entre Vi e qualquer outro vértice (exceto o próprio Vi) é infinita

Page 115: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 115/157

Algoritmo de Dijkstra 111

memset (dis, 0x7f, sizeof (dis));

dis[Vi] = 0;

while (1)

{

int i, n = -1;

for (i = 0; i < V; i++)

if (! vis[i] && (n < 0 || dis[i] < dis[n]))

n = i;

if (n < 0)

break;

vis[n] = 1;

for (i = 0; i < V; i++)

if (MAdj[n][i] && dis[i] > dis[n] + MAdj[n][i])

dis[i] = dis[n] + MAdj[n][i];

}

}

Implementação em C++ utilizando uma lista de adjacências.

#include <string.h> //memset

#include <vector>

using namespace std;

// MAXV é uma constante que define a quantidade máxima de vértices

#define MAXV 100

// Lista de adjacências

// Para inserir uma aresta - partindo do vértice 'i' ao vértice 'j', com custo 'c' - na lista, podemos usar:

// LAdj[i].push_back (make_pair (j, c));

vector < pair <int, int> > LAdj[MAXV];

// Armazena a distância mínima partindo de um vértice 'i' até todos os outros vértices

// dis[j] representa a menor distância de 'i' a 'j'.

int dis[MAXV];

// Calcula as distâncias de 'Vi' a todos os outros vértices de um grafo com 'V' vértices e armazena-as em dis[]

void dijkstra (int Vi, int V)

{

// vis[i] informa se o vértice 'i' já foi visitado/analisado ou não (inicialmente nenhum vértice foi)

char vis[MAXV];

memset (vis, 0, sizeof (vis));

// Inicialmente afirmamos que a menor distância encontrada entre Vi e qualquer outro vértice (exceto o próprio Vi) é infinita

Page 116: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 116/157

Algoritmo de Dijkstra 112

memset (dis, 0x7f, sizeof (dis));

dis[Vi] = 0;

while (1)

{

int i, n = -1;

for (i = 0; i < V; i++)

if (! vis[i] && (n < 0 || dis[i] < dis[n]))

  n = i;

if (n < 0)

break;

vis[n] = 1;

for (i = 0; i < LAdj[n].size (); i++)

// Aresta n -> LAdj[n][i].first com custo LAdj[n][i].second

if (dis[LAdj[n][i].first] > dis[n] + LAdj[n][i].second)

dis[LAdj[n][i].first] = dis[n] + LAdj[n][i].second;

}

}

A implementação do algorítmo utilizando uma lista de adjacências é ligeiramente mais rápida que a implementação

com uma matriz de adjacências para casos em que o número de arestas não se aproxima do pior caso (uma aresta

ligando cada par de vértices); quando próximo ao pior caso, o desempenho é similar. Ambos possuem complexidade

de tempo em torno de O(V²).

É possível obter uma solução em O(E + V log V) (custo amortizado), onde E é o número de arestas, utilizando um

heap de fibonacci ou O(E log V) usando priority queue da STL de C++ para extrair o vértice não-visitado com

menor distância. O heap simples, embora levemente mais lento que o heap de fibonacci, também pode ser usado para

obter uma complexidade similar.

Ligações externas• Artigo explicativo sobre o algoritmo [2]

• Artigo e Implementação do Algoritmo de Dijkstra em C [3]

• (em espanhol) Algoritmo de Dijkstra em C [4]

• (em inglês) Algoritmo de Dijkstra em C# [5]

• (em inglês) [6] - NIST

• (em inglês) Applet do algoritmo de Dijkstra [7]

[2] http:/   /  www. inf.  ufsc. br/  grafos/  temas/  custo-minimo/  dijkstra. html

[3] http:/   /  www. vivaolinux.  com. br/  script/  Algoritmo-de-Dijkstra

[4] http:/   /  www. mis-algoritmos.  com/  source-154.  html

[5] http:/   /  www. codeproject.  com/  useritems/  Shortest_Path_Problem.  asp

[6] http:/   /  www. nist.gov/  dads/  HTML/  dijkstraalgo. html

[7] http:/   /  www-b2. is.tokushima-u.  ac.  jp/  ~ikeda/  suuri/  dijkstra/  Dijkstra. shtml

Page 117: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 117/157

Algoritmo de Boruvka 113

Algoritmo de BoruvkaO o algoritmo de Borůvka (ou Barůvka como também é conhecido) é um algoritmo para encontrar uma árvore

geradora mínima em um grafo para o qual todos os pesos de arestas sejam distintos.

Este algoritmo caracteriza-se pela divisão do grafo original em vários subgrafos para os quais é calculado a Minimum

Spanning Tree (árvore geradora mínima). Ou seja, no fundo, pode ser considerada uma variação de algoritmos como

os de Prim e Kruskal. É um algoritmo que, de modo diverso dos algoritmos de Kruskal e Prim, não usa uma fila de

prioridades[1].

É um algoritmo com uma velocidade de convergência (ou resolução) bastante rápida sendo ideal para implementação

em computadores paralelos já que a  Minimum Spanning Tree de cada um dos subgrafos pode ser calculada numa

máquina diferente.

Este algoritmo é recursivo e só termina quando existe apenas um vértice.

O algoritmo de Baruvka compreende os seguintes passos:

1 - para cada vértice escolher o seu arco com peso mínimo. Deste passo poderão resultar vários subgrafos.

2 - caso o passo 1 dê origem a grafos não conectados, considere-se cada subgrafo gerado no passo anterior como um

vértice do grafo final. Estes vértices do grafo final conterão os vértices de cada umdos subgrafos gerados no passo 1.

Para cada um dos subgrafos gerados execute-se de novo o passo 1 (recursividade). Neste momento pode-se, caso

existam várias máquinas diferentes, correr este algoritmo nas várias máquinas sendo que cada máquina irá ter

assignada a si um dos subgrafos gerados no passo 1 (este tipo de distribuição de processamento é mais conhecido

como Single Instruction Multiple Data já que cada máquina vai executar as mesmas instruções mas sobre um

conjunto de dados diferentes).

3 - Quando for encontrada a  Minimum Spanning Tree para cada um dos grafos gerar um novo grafo onde cada um

vértices deste grafo é um dos subgrafos. O objectivo agora será voltar a executar os passos 1 a 3 até que existam

apenas 2 vértices e um único arco.A título de exemplo

Seja V um grafo não orientado cuja representação matricial é a seguinte:

Exemplo 1

- a b c d e f  

a 0 4 2 0 0 0

b 4 0 2 0 5 1

c 2 2 0 10 1 0

d 0 0 10 0 15 0

e 0 5 1 15 0 2

f 0 1 0 0 2 0

Nota: As posições (i,j) e (j,i) da matriz anterior têm os mesmos valores. Isso indica que o grafo em análise é não orientado.

Executando o passo 1 acima referido sobre esta matriz passaríamos a ter a seguinte matriz:

Page 118: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 118/157

Algoritmo de Boruvka 114

- a b c d e f  

a 0 0 2 0 0 0

b 0 0 0 0 0 1

c 0 0 0 0 1 0

d 0 0 10 0 0 0

e 0 0 0 0 0 0

f 0 0 0 0 0 0

Analisando esta nova matriz podemos ver que existem duas linhas a zero (e e f ), o que claramente indica a existência

de dois subgrafos. Como verificar quais os subgrafos? É um processo simples de verificar quais as linhas e colunas

que se cruzam. Neste caso os novos subgrafos são dados pelas seguintes matrizes:

- b f 

b 0 1

f 0 0

- a c d e

a 0 2 0 0

c 0 0 0 1

d 0 10 0 0

e 0 0 0 0

Notar que é necessário reter,da matriz original os valores que cruzam os vértices dos diferentes subgrafos gerados no

passo 1, ou seja, a arco a-b (com peso 4), o arco c-b (com peso 2), o arco b-e (com peso 5) e o arco e-f (com peso 2).Estes arcos são usados para unir os vértices do arco gerado no passo 3.

Neste exemplo bastante simples, o passo 2 representado pelas duas matrizes anteriores. Deste modo, não é necessário

encontrar a Minimum Spanning Tree para cada uma destas matrizes já que quando se executa o passo 1 estas são

encontradas automaticamente (outros exemplos há em que é necessário executar o passo 2). Isto leva, então, à

geração do grafo do passo 3 em que temos dois vértices (um para cada uma das matrizes anteriores) e que pode ser

representado sob a seguinte forma

- bf acde

bf 0 4/2/2/5

acde 4/2/2/5 0

Note-se que a diagonal principal da matriz está a zero mas a outra diagonal não (é apenas uma questão de

representacão. (matriz transposta esta matriz ir-se-ia obter a diagonal principal não nula e a outra diagonal a zero.)

Estes valores indicam possíveis arcos que ligam os vértices deste grafo. Então, volta-se a executar o passo 1 sobre

este grafo pelo que se chega à conclusão de que o grafo inicial deu origem a um grafo final cuja representação é a

seguinte:

Page 119: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 119/157

Algoritmo de Boruvka 115

- bf acde

bf 0 2

acde 0 0

Referências

Page 120: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 120/157

116

Grafos individuais

Grafo de Biggs-SmithGrafo de

Biggs –Smith

O grafo de Biggs – Smith

vértices 102

arestas 153

Raio 7

Diâmetro 7

Cintura 9

Automorfismos 2448 (PGL(2,17))

Númerocromático

3

Índicecromático

3

Propriedades CúbicoHamiltonianosimétricodistância-regular

No campo da matemática da teoria dos grafos o grafo de Biggs –Smith é um grafo não-orientado 3-regular com 102

vértices e 153 arestas.[1]

Ele tem número cromático 3, índice cromático 3, raio 7, diâmetro 7 e cintura 9. É tanto 3-vértice-conectado quanto

3-aresta-conectado.

Todos os grafos distância-regular cúbicos são conhecidos.[2] O grafo Biggs – Smith é um destes 13 grafos.

Propriedades algébricasO grupo de automorfismo do grafo de Biggs – Smith é um grupo de ordem 2448[3] isomórfico ao PGL(2,17). Ele age

transitivamente sobre os vértices, nas arestas e nos arcos do grafo. Portanto, o grafo de Biggs – Smith é im grafo

simétrico. Ele tem automorfismos que levam qualquer vértice para qualquer outro vértice e qualquer aresta para

qualquer outra aresta. De acordo com o censo de Foster , o grafo de Biggs-Smith, referenciado como F102A, é oúnico grafo cúbico simétrico em 102 vértices.[4]

Page 121: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 121/157

Grafo de Biggs-Smith 117

O grafo de Biggs – Smith é também singularmente determinado por seu espectro de grafo, o conjunto de autovalores

do grafo de sua matriz de adjacência.[5]

O polinômio característico do grafo de Biggs – Smith é:

.

Galeria

O número cromático do grafo de

Biggs – Smith graph é 3.

O índice cromático do grafo de

Biggs – Smith graph é 3.

Desenho alternativo do grafo de

Biggs – Smith.

[2] Brouwer, A. E.; Cohen, A. M.; and Neumaier, A. Distance-Regular Graphs. New York: Springer-Verlag, 1989.

[3] Royle, G. F102A data (http:/   /  www. csse. uwa. edu. au/  ~gordon/  foster/  F102A.  html)

[4] Conder, M. and Dobcsányi, P. "Trivalent Symmetric Graphs Up to 768 Vertices." J. Combin. Math. Combin. Comput. 40, 41 – 63, 2002

[5] E. R. van Dam and W. H. Haemers, Spectral Characterizations of Some Distance-Regular Graphs. J. Algebraic Combin. 15, pages 189 – 202,

2003

Page 122: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 122/157

Grafo de Brouwer-Haemers 118

Grafo de Brouwer-Haemers

Grafo deBrouwer –Haemers

vértices 81

arestas 810

Cintura 3

Automorfismos 233280

Númerocromático

7

Propriedades Fortemente regular

No campo da matemática da teoria dos grafos, o Grafo de Brouwer –Haemers é um grafo não direcionado

20-regular com 81 vértices e 810 arestas. É o único grafo fortemente regular com parâmetros (81, 20, 1, 6).

Propriedades algébricas

O automorfismo de grupo do grafo de Brouwer-Haemers é um grupo da oredem de 233280. O polinômio

característico do grafo de Brouwer-Haemers é: .

Ligações externas• Weisstein, Eric W. "Brouwer – Haemers Graph." From MathWorld —A Wolfram Web Resource. [1]

• Página de Andries E. Brouwer. [2]

Referências

[1] http:/  

 /  

mathworld. 

wolfram. 

com/  

Brouwer-HaemersGraph. 

html[2] http:/   /  www. win.tue.  nl/  ~aeb/  graphs/  Brouwer-Haemers. html

Page 123: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 123/157

Grafo de Desargues 119

Grafo de Desargues

Grafo deDesargues

O grafo de Desargues

Nomeado em

honra a

Girard Desargues

vértices 20

arestas 30

Raio 5

Diâmetro 5

Cintura 6

Automorfismos 240 (S5× Z /2Z)

Número cromático 2

Índice cromático 3

Propriedades CúbicoHamiltonianosimétricodistância-regularBipartido

No campo da matemática da teoria dos grafos o grafo de Desargues é um grafo cúbico, distância-transitivo com 20

vértices e 30 arestas.[1] É nomeado em honra a Girard Desargues, surge a partir de diferentes construções

combinatória, tem um elevado nível de simetria, é o único conhecido cubo parcial cúbico não-planar , e tem sido

aplicado em bases de dados químicos.

O nome "grafo de Desargues" também tem sido usado para se referir ao complemento do grafo de Petersen

[2]

.

ConstruçõesExistem várias maneiras diferentes de construir o grafo de Desargues:

• É o grafo de Petersen generalizado G(10, 3). Para formar o grafo de Desargues desta forma, conecte dez dos

vértices em um decágono regular, e conecte os outros dez vértices em uma estrela de dez pontas que conecta os

pares de vértices a uma distância três em um segundo decágono. O grafo de Desargue consiste das 20 arestas

destes dois polígonos juntamente com 10 arestas adicionais de pontos de conexão de um decágono para os pontos

correspondentes do outro.

• É o grafo de Levi da configuração de Desargues. Esta configuração é composta por dez pontos e dez linhas

descrevendo dois triângulos em perspectiva, seu centro de perspectiva, e seu eixo de perspectiva. O grafo de

Desargues tem um vértice para cada ponto, um vértice para cada linha, e uma aresta para cada par de linhas de

Page 124: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 124/157

Grafo de Desargues 120

ponto incidente. O teorema de Desargues, nomeado em honra ao matemático francês do século 17 Girard

Desargues, descreve um conjunto de pontos e linhas que formam essa configuração, e a configuração e o grafo

devem seu nome a ela.

• É a cobertura bipartida dupla do grafo de Petersen, formada pela substituição de cada vértice do grafo de Petersen

por um par de vértices e cada aresta do grafo de Petersen por um par de arestas cruzadas.

• É o grafo de Kneser bipartido H 5,2

. Seus vértices podem ser rotulados pelos dez subconjuntos de dois elementos e

os dez subconjuntos de três elementos de um conjunto de cinco elementos, com uma aresta conectando dois

vértices quando um dos conjuntos correspondentes é um subconjunto do outro.

• O grafo de Desargues é Hamiltoniano e pode ser construído pela notação LCF: [5,−5,9,−9]5

Propriedades algébricasO grafo de Desargues é um grafo simétrico: tem simetrias que levam qualquer vértice para qualquer outro vértice e

qualquer aresta para qualquer outra aresta. Seu grupo de simetria tem ordem 240, e é isomórfico ao o produto de um

grupo simétrico em 5 pontos, com um grupo de ordem 2.

Pode-se interpretar esta representação de produtos do grupo de simetria em termos de construções do grafo de

Desargues: o grupo simétrico em cinco pontos é o grupo de simetria da configuração de Desargues, e o subgrupo de

ordem-2 troca os papéis dos vértices que representam pontos da configuração de Desargues e os vértices que

representam as linhas. Como alternativa, em termos do grafo bipartido de Kneser, o grupo simétrico em cinco pontos

de age em separado sobre os subconjuntos de cinco pontos de dois elementos e de três elementos, e a

complementação dos subconjuntos formam um grupo de ordem dois que transforma um tipo de subconjunto em

outro. O grupo simétrico em cinco pontos é também o grupo de simetria do grafo de Petersen, e o subgrupo de

ordem-2 troca os vértices dentro de cada par de vértices formados na construção da dupla cobertura.

O grafo de Petersen generalizado G(n, k ) é vértice-transitivo se e somente se n = 10 e k = 2 ou se k 2 ≡ ±1 (mod n) e é

aresta-transitivo somente nos seguintes sete casos: (n, k ) = (4, 1), (5, 2), (8, 3), (10, 2), (10, 3), (12, 5), (24, 5).[3]

Assim, o grafo de Desargues é um dos apenas sete grafos de Petersen generalizados simétricos. Entre estes setegrafos estão o grafo cúbico G(4, 1), o grafo de Petersen G(5, 2), o grafo de Möbius – Kantor G(8, 3), o grafo

dodecaédrico G(10, 2) e o grafo de Nauru G(12, 5).

O polinômio característico do grafo de Desargues é:

Portanto o grafo de Desargues é um grafo integral: seu espectro consiste inteiramente de inteiros.

AplicaçõesEm química, o grafo de Desargues é conhecido como o grafo de Desargues-Levi; é utilizado para organizar

sistemas de estereoisômeros de compostos 5-ligantes. Nesta aplicação, as trinta arestas do grafo correspondem apseudorotações dos ligantes[4][5].

Outras propriedadesO grafo de Desargues tem um número de cruzamento retilíneo 6, e é o menor grafo cúbico com este número de

cruzamento (sequência A110507 na OEIS). É o único conhecido cúbico não planar cubo parcial[6] .

O grafo de Desargues tem um número cromático 2, índice cromático 3, raio 5, diâmetro 5 e cintura 6. É também um

grafo hamiltoniano, 3-vértice-conectado, e 3-aresta-conectado.

Todos os grafos distância-regular cúbicos são conhecidos.[7] O grafo de Desargues é um destes 13 grafos.

Page 125: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 125/157

Grafo de Desargues 121

Galeria

O grafo de Desargues colorido para

sobresaltar vários ciclos.

O índice cromático do grafo de Desargues é 3. O número cromático do grafo de Desargues

é 2.

[3][3] .[7][7] Brouwer, A. E.; Cohen, A. M.; and Neumaier, A. Distance-Regular Graphs. New York: Springer-Verlag, 1989.

Grafo de Folkman

Grafo deFolkman

O grafo de Folkman

Nomeado emhonra a

J. Folkman

vértices 20

arestas 40

Raio 3

Diâmetro 4

Cintura 4

Número cromático 2

Índice cromático 4

Propriedades PerfeitoHamiltonianoSemi-simétrico

BipartidoRegularEuleriano

Page 126: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 126/157

Grafo de Folkman 122

No campo da matemática da teoria dos grafos o grafo de Folkman, nomeado em honra a Jon Folkman, é um grafo

bipartido 4-regular com 20 vértices e 40 arestas.[1]

O grafo de Folkman é Hamiltoniano e tem número cromático 2, índice cromático 4, raio 3, diâmetro 4 e cintura 4. e é

um grafo perfeito tanto 4-vértice-conectado quanto 4-aresta-conectado.

Propriedades algébricasO grupo de automorfismo do grafo de Folkman age transitivamente em suas arestas, mas não em seus vértices. É o

menor grafo não direcionado, que é aresta-transitivo e regular, mas não é vértice-transitivo.[2] Esses grafos são

chamados semi-simétricos e foram estudados pela primeira vez por Folkman em 1967 que descobriu o grafo de 20

vértices, que agora é nomeado em sua honra.[3]

Como um grafo semi-simétrico, o gráfico de Folkman é bipartido, e seu grupo de automorfismo age transitivamente

em cada um dos dois conjuntos de vértices da bipartição. No diagrama abaixo, indicando o número cromático do

grafo, os vértices verdes não podem ser mapeados para os vermelhos por qualquer automorfismo, mas qualquer

vértice vermelho pode ser mapeado em qualquer outro vértice vermelho e qualquer vértice verde pode ser mapeado

em qualquer outro vértice verde.

O polinômio característico do grafo de Folkman é .

Galeria

O índice cromático do grafo de Folkman

é 4.

O número cromático do grafo de Folkman

é 2.

O grafo de Folkman é Hamiltoniano.

[2][2] Skiena, S. Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica. Reading, MA: Addison-Wesley, pp.

186-187, 1990

Page 127: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 127/157

Grafo de Foster 123

Grafo de Foster

Grafo de Foster

Nomeado emhonra a

Ronald Martin Foster

vértices 90

arestas 135

Raio 8

Diâmetro 8

Cintura 10

Automorfismos 4320

Número cromático 2

Índice cromático 3

Propriedades Cúbico

simétricodistância-transitivoHamiltonianosimétrico

No campo da matemática da teoria dos grafos, o Grafo de Foster é um grafo 3-regular com 90 vértices e 135

arestas.[1]

O grafo de Foster é Hamiltoniano e tem número cromático 2, índice cromático 3, raio 8, diâmetro 8 e cintura 10. Ele

é também um grafo 3-vértice-conectado e 3-aresta-conectado.

Todos os grafos distância-regular cúbicos são conhecidos.[2] O grafo de Foster é um destes 13 grafos. É o único

grafo distância-transitivo com array de intersecção {3,2,2,2,2,1,1,1;1,1,1,1,2,2,2,3}.[3] Pode ser construído como o

grafo de incidência do espaço parcial linear, que é a única cobertura tripla com nenhum 8-gono do quadrângulo

generalizado GQ(2,2). É nomeado em honra a R. M. Foster, cujo censo de Foster  de grafos simétricos cúbicos

incluíam este grafo.

Page 128: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 128/157

Grafo de Foster 124

Propriedades algébricasO grupo de automorfismo do grafo de Foster é um grupo de ordem 4320.[4] Ele age transitivamente sobre os vértices,

nas arestas e nos arcos do grafo. Portanto o grafo de Foster é um grafo simétrico. Ele tem automorfismos que levam

qualquer vértice para qualquer outro vértice e qualquer aresta a qualquer outra aresta. Segundo o censo de Foster , o

grafo de Foster, referenciado como F90A, é o único grafo cúbico simétrico em 90 vértices.[5]

O polinômio característico do grafo de Foster é igual a.

Galeria

Grafo de Foster colorido para ressaltar vários

ciclos.

O número cromático do grafo de Foster é 2. O índice cromático do grafo de Foster é 3.

[2][2] Brouwer, A. E.; Cohen, A. M.; and Neumaier, A. Distance-Regular Graphs. New York: Springer-Verlag, 1989.

[3] Cubic distance-regular graphs (http:/   /  www. win. tue. nl/  ~aeb/  graphs/  cubic_drg.  html), A. Brouwer.

[4] Royle, G. F090A data (http:/   /  www. csse. uwa. edu. au/  ~gordon/  foster/  F090A.  html)

[5][5] Conder, M. and Dobcsányi, P. "Trivalent Symmetric Graphs Up to 768 Vertices." J. Combin. Math. Combin. Comput. 40, 41-63, 2002

Page 129: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 129/157

Grafo de Frucht 125

Grafo de Frucht

Grafo de Frucht

Nomeado emhonra a

Robert Frucht

vértices 12

arestas 18

Raio 3

Diâmetro 4

Cintura 3

Automorfismos 1 ({id })

Número cromático 3

Índice cromático 3

Propriedades CúbicoPlanarHamiltoniano

No campo da matemática da teoria dos grafos, o Grafo de Frucht é um grafo 3-regular com 12 vértices e 18 arestas

e nenhuma simetria não-trivial.[1] Foi descrito pela primeira vez por Robert Frucht em 1939.[]

O grafo de Frucht é um grafo Halin com número cromático 3, índice cromático 3, raio 3, diâmetro 4, e cintura 3.

Como em todos os grafos Halin, o grafo de Frucht é planar, 3-vértice-conectado, e poliédrico. É também um grafo

3-aresta-conectado.

O grafo de Frucht é hamiltoniano e pode ser construído a partir da notação LCF: [−5,−2,−4,2,5,−2,2,5,−2,−5,4,2].

Propriedades algébricas

O grafo de Frucht é o menor grafo cúbico possuindo somente um único automorfismo de grafos, a identidade [2](ouseja, cada vértice pode ser distinguido topologicamente de todos os outros vértices). Tais grafos são chamados

assimétricos (ou identidade). O teorema de Frucht diz que qualquer grupo pode ser compreendido como o grupo de

simetrias de um grafo,[] e um reforço deste teorema também devido à Frucht afirma que qualquer grupo pode ser

percebido como as simetrias de um grafo 3-regular;[3] o grafo de Frucht fornece um exemplo desta realização para o

grupo trivial.

O polinômio característico do grafo de Frucht é igual a

.

Page 130: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 130/157

Grafo de Frucht 126

Galeria

O grafo de Frucht é planar. O número cromático do grafo de Frucht

é 3.

O grafo de Frucht é Hamiltoniano.

[2][2] Skiena, S. Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica. Reading, MA: Addison-Wesley, 1990

Grafo de Gray

Grafo de Gray

O grafo de Gray

Nomeado emhonra a

Marion Cameron Gray

vértices 54

arestas 81

Raio 6

Diâmetro 6

Cintura 8

Automorfismos 1296

Número cromático 2

Índice cromático 3

Propriedades CúbicoHamiltonianoSemi-simétrico

No campo da matemática da teoria dos grafos o grafo de Gray é um grafo não direcionado bipartido, com 54

vértices e 81 arestas. É um grafo cúbico: todo vértice toca exatamente três arestas. Foi descoberto por Marion C.

Page 131: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 131/157

Grafo de Gray 127

Gray, em 1932, (de forma inédita), em seguida, descoberto independentemente por Bouwer 1968, em resposta a uma

pergunta feita por Jon Folkman em 1967[1]. O grafo de Gray é interessante como o primeiro exemplo conhecido de

um grafo cúbico tendo a propriedade algébrica de ser aresta-transitivo, mas não sendo vértice-transitivo (ver abaixo).

O grafo de Gray tem um número cromático 2, índice cromático 3, raio 6 e diâmetro 6. Ele é também um grafo

3-vértice-conectado e 3-aresta-conectado não-planar.

ConstruçãoO grafo de Gray pode ser construído [2] dos 27 pontos de uma grade de 3 × 3 × 3 e as 27 linhas de eixo paralelo a

esses pontos. Esta coleção de pontos e linhas formam um configuração projetiva: cada ponto tem exatamente três

linhas, através dele, e cada linha tem exatamente três pontos sobre ela. O grafo de Gray é o grafo de Levi dessa

configuração, que tem um vértice para cada ponto e para cada linha da configuração, e uma aresta para cada par de

um ponto e uma linha que se tocam. Esta construção generaliza (Bouwer 1972) para qualquer dimensão n ≥ 3,

rendendo um grafo de Levi n-valente com propriedades algébricas semelhantes às do gráfico deGray.

Em (Monson, Pisanski, Schulte, Ivic-Weiss 2007)[3], o grafo de Gray aparece como um tipo diferente de grafo de

Levi com as arestas e faces triangulares de uma determinada localmente toroidal resumo regular 4 politopo. É,

portanto, o primeiro de uma família infinita de grafos cúbicos similarmente construídos.

Marušič e Pisanski (2000)[4] indicaram vários métodos alternativos de construção do grafo de Gray. Como acontece

com qualquer grafo bipartido, não há ciclos de comprimento impar, e também não há ciclos de quatro ou seis

vértices, de modo que a cintura do gráfico Gray é 8. A superfície orientada mais simples sobre a qual o grafo de Gray

pode ser incorporado tem gênero 7[5]. O grafo de Gray é hamiltoniano e pode ser construído a partir da notação LCF:

Propriedades algébricas

O grupo de automorfismo do grafo de Gray é um grupo de ordem 1296. Ele atua transitivamente nas arestas dografo, mas não em seus vértices : existem simetrias levando cada aresta para qualquer outra aresta mas não tomando

cada vértice para qualquer outro vértice. Os vértices que correspondem a pontos da configuração subjacentes apenas

podem ser simétricos para outros vértices que correspondem a pontos, e os vertices que correspondem a linhas só

podem ser simétricos para outros vértices que correspondem a linhas. Portanto, o grafo de Gray é um grafo

semi-simétrico, o menor possível grafo semi-simétrico cúbico.

O polinômio característico do grafo de Gray é

[1][1] .

[2][2] .

[4][4] .[5][5] .

Page 132: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 132/157

Grafo de Gray 128

Ligações externas• O grafo de Gray é o menor grafo de seu tipo (http:/   /  mathworld. wolfram. com/  news/  2002-04-09/  graygraph/  ) ,

em MathWorld.

Galeria

O grafo de Gray O número cromático do grafo

de Gray é 2.

O índice cromático do grafo de

Gray é 3.

A configuração básica do

grafo de Gray.

Grafo de Heawood

Grafo de Heawood

Nomeado emhonra a

Percy John Heawood

vértices 14

arestas 21

Raio 3

Diâmetro 3

Cintura 6

Automorfismos 336 (PGL2(7))

Número cromático 2

Índice cromático 3

Propriedades Cúbicogaioladistância-transitivodistância-regular

ToroidalHamiltonianosimétrico

Page 133: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 133/157

Grafo de Heawood 129

No campo da matemática da teoria dos grafos o grafo de Heawood é um grafo não-orientado com 14 vértices e 21

arestas.[1] O grafo é cúbico, e todos os ciclos do grafo têm seis ou mais arestas. Todos os menores grafos cúbicos têm

ciclos mais curtos, de modo que este grafo é o gaiola-6, o menor grafo cúbico de cintura 6.

É também o grafo de Levi do plano de Fano, o grafo que representa a incidência entre os pontos e linhas nesta

geometria. É um grafo distância-regular; o seu grupo de simetrias é PGL2

(7).[2]

Há 24 correspondências perfeitas no grafo de Heawood; para cada correspondência, o conjunto de arestas fora das

correspondências forma um ciclo Hamiltoniano. Por exemplo, a figura mostra os vértices do grafo colocados em um

ciclo, com as diagonais internas do ciclo formando uma correspondência. Subdividindo as arestas do ciclo em duas

correspondências, podemos particionar o grafo de Heawood em três correspondências perfeitas (isto é, usando 3

cores em suas arestas) em oito formas diferentes (Brouwer).

O grafo de Heawood foi batizado em honra de Percy John Heawood, que em 1890 provou que cada subdivisão do

toro em polígonos pode ser colorida, no máximo, com sete cores.[3][4] O grafo de Heawood forma uma subdivisão do

toro com sete regiões adjacentes mutuamente, mostrando que esse limite é apertado.

O grafo de Heawood tem número de cruzamento 3, e é o menor grafo cúbico com este número de cruzamento.

Incluindo o grafo de Heawood, existem 8 grafos distintos de ordem 14 com número de cruzamento 3.

O grafo de Heawood é um grafo distância-unidade.[5]

Propriedades algébricasO grupo de automorfismo do grafo de Heawood é isomórfico ao grupo linear projetivo PGL

2(7), um grupo de ordem

336.[6] Ele atua transitivamente sobre os vértices, nas arestas e nos arcos do grafo. Portanto o grafo Heawood é um

grafo simétrico. Ele tem automorfismos que levam qualquer vértice para qualquer outro vértice e qualquer aresta

para qualquer outra aresta. De acordo com o censo Foster, o grafo de Heawood, referenciado como F014A, é o único

grafo cúbico simétrico com 14 vértices.[7][8]

O polinômio característico do grafo de Heawood é . É o único grafo com este

polinômio característico, tornando-se um grafo determinado pelo seu espectro.

Incorporado em um ToroO grafo de Heawood é um grafo toroidal; ou seja, ele pode ser incorporado sem cruzamentos em um toro. Uma

incorporação deste tipo coloca seus vértices e arestas em um espaço euclidiano tri-dimensional como o conjunto de

vértices e arestas de um poliedro convexo com a topologia de um toro, o poliedro de Szilassi.

Galeria

O poliedro de Szilassi. O grafo de Heawood tem número

de cruzamento 3.

O índice cromático do grafo

de Heawood é 3.

O número cromático do

grafo de Heawood é 2.

Page 134: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 134/157

Grafo de Heawood 130

A incorporação do grafo de

Heawood em um toro (mostrado

como um quadrado com

condições de contorno

periódicas) particionando-o em

sete regiões mutuamente

adjacentes

[7] Royle, G. "Cubic Symmetric Graphs (The Foster Census)." (http:/  

 /  

www. 

cs. 

uwa. 

edu. 

au/  

~gordon/  

remote/  

foster/  

#census)[8][8] Conder, M. and Dobcsányi, P. "Trivalent Symmetric Graphs Up to 768 Vertices." J. Combin. Math. Combin. Comput. 40, 41-63, 2002.

Grafo de Higman-Sims

Grafo de Higman –Sims

Desenho baseado em uma construção de Paul R. Hafner[1]

Nomeado em honra a Donald G. HigmanCharles C. Sims

vértices 100arestas 1100

Raio 2

Diâmetro 2

Cintura 4

Automorfismos 88704000 (HS:2)

Propriedades Fortemente regularAresta-transitivoHamiltonianoEuleriano

Integral

Page 135: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 135/157

Grafo de Higman-Sims 131

As partes em separado da construção de Hafner.

No campo da matemática da teoria dos grafos, o Grafo de

Higman –Sims é um grafo não direcionado, 22-regular com

100 vértices e 1100 arestas. É o único grafo fortemente

regular com 100 vértices e valência 22, onde nenhum par de

vértices vizinhos partilham um vizinho comum e cada par de

vértices não-vizinhos partilham seis vizinhos comuns.[2]

Foiconstruído em 1968 por Donald G. Higman e Charles C. Sims

como uma forma de definir o grupo de Higman – Sims, e este

grupo é um subgrupo do índice dois no grupo de

automorfismos do grafo de Higman – Sims.[3]

A construção começa com o grafo M22

, cujos 77 vértices são os blocos do S(3,6,22) sistema de Steiner W22

.

Vértices adjacentes são definidos como blocos disjuntos. Este grafo é fortemente regular; qualquer vértice tem 16

vizinhos, quaisquer dois vértices adjacentes não tem vizinhos comuns, e quaisquer dois vértices não adjacentes têm 4

vizinhos comuns. Este grafo tem M22

:2 como seu automorfismo de grupo, sendo M22

o seu grupo Mathieu.

O grafo de Higman – Sims é formado anexando os 22 pontos de W22

e um 100º vértice C. Os vizinhos de C são

definidos ser estes 22 pontos. Um ponto adjacente a um bloco é definido ser aquele que está incluído.

Um grafo de Higman – Sims pode ser particionado em duas cópias do grafo de Hoffman – Singleton de 352 maneiras.

Propriedades algébricasO grupo de automorfismo do grafo de Higman – Sims graph é um grupo de ordem 88704000 isomórfico ao produto

semidireto do grupo de Higman – Sims de ordem 44352000 com o grupo cíclico de ordem 2. [4] Ele tem

automorfismos que levam qualquer aresta para outra aresta, fazendo o grafo de Higman – Sims um grafo

aresta-transitivo.[5]

O polinômio característico do grafo de Higman – Sims graph is ( x − 22)( x − 2)77( x + 8)22. Portanto o grafo de

Higman – Sims é um grafo integral: seu espectro de grafo consiste inteiramente de inteiros. Ele é também considerado

o único grafo com este polinômio característico, fazendo dele um grafo determinado por seu espectro.

Dentro da malha de Leech

Uma projeção do grafo de Higman-Sims dentro da malha de

Leech.

O grafo de Higman-Sims ocorre naturalmente no interior da

malha de Leech: se X , Y e Z são três pontos na malha de Leech

tais que as distâncias XY , XZ e YZ são 2, 3, 3 respectivamente,

então há exatamente 100 pontos da malha de Leech T de tal

forma que todas as distâncias XT , YT e ZT são iguais a 2, e se

ligarmos dois pontos, tais T e T ′ quando a distância entre eles

é 2, O grafo resultante é isomorfo ao grafo de Higman-Sims.

Além disso, o conjunto de todos os automorfismos da malha

de Leech (Isto é, congruências euclidiana fixando-a) que

fixam cada um dos  X , Y e  Z é o grupo de Higman – Sims (Se

nós permitirmos trocar X e Y , a extensão de ordem 2 de todos

os automorfismos de grafos é obtida). Isso mostra que o grupo

Higman-Sims ocorre dentro do grupo de Conway Co2

(com

sua extensão de ordem 2) e Co3, e, conseqüentemente,

também Co1

.[6]

[1][1] .

[5] Brouwer, A. E. and Haemers, W. H. "The Gewirtz Graph: An Exercise in the Theory of Graph Spectra." Euro. J. Combin. 14, 397 – 407, 1993.

Page 136: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 136/157

Grafo de Hoffman-Singleton 132

Grafo de Hoffman-Singleton

Grafo deHoffman –Singleton

Nomeado em

honra a

Alan J. Hoffman

Robert R. Singleton

vértices 50

arestas 175

Raio 2

Diâmetro 2[]

Cintura 5[]

Automorfismos 252000 (PGL(3,52):2)[1]

Número cromático 4

Índice cromático 7[2]

Propriedades SimétricoGrafo de MooreHamiltonianoIntegralGaiolaFortemente regular

O grafo de Hoffman-Singleton. O subgrafo das arestas azuis é a

soma dos dez pentágonos disjuntos.

No campo da matemática da teoria dos grafos, o Grafo

de Hoffman –Singleton é um grafo 7-regular não

direcionado com 50 vértices e 175 arestas. É o únicografo fortemente regular com parâmetros (50,7,0,1).[3]

Foi construído por Alan Hoffman e Robert Singleton ao

tentar classificar todos os grafos de Moore, e é a mais

alta ordem de grafo de Moore esistente conhecida até o

momento.[4] Como é um grafo de Moore onde cada

vértice tem grau 7, e sua cintura é 5, ele é um

(7,5)-gaiola.

Page 137: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 137/157

Grafo de Hoffman-Singleton 133

ConstruçãoUma construção simples, direta é como se segue: Tome cinco pentágonos P

he cinco pentagramas Q

i, de forma que o

vértice j de Ph

seja adjacente aos vértices j-1,j+1 de Ph

e o vértice j de Qiseja adjacente aos vértices j-2,j+2 de Q

i.

Agora conecte o vértice j de Ph

ao vértice hi+j de Qi. (Todos os índices mod 5.)

Propriedades algébricasO grupo de automorfismo do grafo de Hoffman-Singleton é um grupo de ordem 252000 isomórfico a PΣU(3,52). Ele

age transitivamente sobre os vértices, nas arestas e nos arcos do grafo. Portanto, o grafo de Biggs – Smith é im grafo

simétrico.

O polinômio característico do grafo de Hoffman-Singleton é igual a . Portanto o

grafo de Hoffman-Singleton é um grafo integral: seu espectro de grafo consiste inteiramente de inteiros.[1][1] Hafner, P. R. "The Hoffman-Singleton Graph and Its Automorphisms." J. Algebraic Combin. 18, 7-12, 2003.

[2] Royle, G. "Re: What is the Edge Chromatic Number of Hoffman-Singleton?" [email protected] posting. 28 de Setembro de

2004. (http:/   /  listserv. nodak.  edu/  scripts/  wa. exe?A2=ind0409&  L=graphnet&  F=& S=& P=4981.  )

[3][3] .

[4][4] .

Grafo de Holt

Grafo de Holt

No grafo de Holt, todos os vértices são equilvalentes, e todas as arestas são equivalentes, mas as arestas não são necessáriamenteequivalentes as suas inversas.

Nomeado em honra a Derek F. Holt

vértices 27

arestas 54

Raio 3

Diâmetro 3

Cintura 5

Automorfismos 54

Número cromático 3

Índice cromático 5

Page 138: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 138/157

Grafo de Holt 134

Propriedades Vértice-transitivoAresta-transitivoMeio-transitivografo de CayleyHamiltonianoEuleriano

No campo da matemática da teoria dos grafos o grafo de Holt ou grafo de Doyle é o menor grafo meio-transitivo,

ou seja, o menor exemplo de grafo vértice-transitivo e aresta-transitivo que não é também simétrico.[1][2] Esses

grafos não são comuns.[3] É nomeado em honra a Peter G. Doyle e Derek F. Holt, que descobriram o mesmo grafo

de forma independente em 1976[4] e 1981[5] respectivamente.

O grafo de Holt tem um diâmetro de 3, raio 3, cintura 5, número cromático 3, índice cromático 5 e é hamiltoniano

com 98472 ciclos distintos hamiltonianos.[] é também um grafo 4-vértice-conectado e 4-aresta-conectado.

Ele tem um grupo de automorfismo da ordem de 54 automorfismos.[] Este é um grupo menor que um grafo simétrico

com o mesmo número de vértices e arestas teria. O desenho do grafo à direita destaca isto, na medida em que carece

de simetria reflexiva.

O polinômio característico do grafo de Holt é:

Galeria

O número cromático do grafo de Holt é 3. O índice cromático do grafo de Holt é 5. O grafo de Holt é Hamiltoniano.

[1] Doyle, P. "A 27-Vertex Graph That Is Vertex-Transitive and Edge-Transitive But Not L-Transitive." October 1998. (http:/   /  arxiv.  org/  abs/ 

math/  0703861/  )

[2][2] .

[3] Jonathan L. Gross, Jay Yellen, Handbook of Graph Theory, CRC Press, 2004, ISBN 1584880902, p. 491.

[4][4] . Como citado pela MathWorld.

[5][5] .

Page 139: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 139/157

Grafo de Ljubljana 135

Grafo de Ljubljana

Grafo deLjubljana

O grafo de Ljubljana

vértices 112

arestas 168

Raio 7

Diâmetro 8

Cintura 10

Automorfismos 168

Númerocromático

2

Índicecromático

3

Propriedades Cúbico

HamiltonianoSemi-simétrico

No campo da matemática da teoria dos grafos o grafo de Ljubljana é um grafo não direcionado bipartido com 112

vértices e 168 arestas.

É um grafo cúbico com diâmetro 8, raio 7, número cromático 2 e índice cromático 3. Sua cintura é 10 e há

exatamente 168 ciclos de comprimento 10 nele. Há também 168 ciclos de comprimento 12.[1]

ConstruçãoO grafo de Ljubljana é Hamiltoniano e pode ser construído a partir da notação LCF : [47, -23, -31, 39, 25, -21, -31,

-41, 25, 15, 29, -41, -19, 15, -49, 33, 39, -35, -21, 17, -33, 49, 41, 31, -15, -29, 41, 31, -15, -25, 21, 31, -51, -25, 23,

9, -17, 51, 35, -29, 21, -51, -39, 33, -9, -51, 51, -47, -33, 19, 51, -21, 29, 21, -31, -39] 2.

O grafo de Ljubljana é o grafo de Levi da configuração de Ljubljana, uma configuração quadrangular livre com 56

linhas e 56 pontos.[1] Nesta configuração, cada linha contém exatamente três pontos, cada ponto pertence a

exatamente 3 linhas e quaisquer duas linhas se cruzam em no máximo um ponto.

Page 140: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 140/157

Grafo de Ljubljana 136

Propriedades algébricasO grupo de automorfismo do grafo de Ljubljana é um grupo de ordem 168. Ele age transitivamente em suas arestas,

mas não em seus vértices: existem simetrias levando cada aresta para qualquer outra aresta, mas não levando cada

vértice para qualquer outro vértice. Portanto, o grafo de Ljubljana é um grafo semi-simétrico, o terceiro menor grafo

cúbico semi-simétrico possível após o grafo de Levi em 54 vértices e o grafo de Iofinova-Ivanov em 110 vértices.[2]

O polinômio característico do grafo de Ljubljana é

HistóriaO grafo de Ljubljana foi publicado pela primeira vez em 1993 por Brouwer, Dejter e Thomassen.[3]

Em 1972, Bouwer já estava falando de uma de um grafo cúbico de 112 vértices aresta- mas não vértice-transitivo

encontrado por R. M. Foster, mas não publicado ainda.[4] Conder, Malnic, Marusic, Pisanski e Potočnik

redescobriram este grafo de 112 vértices em 2002 e nomearam-no grafo de Ljubljana capital da Eslovénia. Eles

provaram que ele era o único grafo cúbico de 112 vértices aresta- mas não vértice-transitivo cúbicos e, portanto, que

o grafo era aquele encontrado por Foster.

Galeria

O número cromático do grafo de

Ljubljana é 2.

O índice cromático do grafo de

Ljubljana é 3.

Desenho alternativo do grafo de

Ljubljana.

O grafo de Ljubljana é o grafo de

Levi desta configuração.

[1] Conder, M.; Malnič, A.; Marušič, D.; Pisanski, T.; and Potočnik, P. "The Ljubljana Graph." 2002. (http:/   /  citeseer. ist. psu. edu/ 

conder02ljubljana.  html).

[2][2] Marston Conder, Aleksander Malnič, Dragan Marušič and Primž Potočnik. "A census of semisymmetric cubic graphs on up to 768 vertices."

Journal of Algebraic Combinatorics: An International Journal. Volume 23, Issue 3, pages 255-294, 2006.

[3][3] Brouwer, A. E.; Dejter, I. J.; and Thomassen, C. "Highly Symmetric Subgraphs of Hypercubes." J. Algebraic Combinat. 2, 25-29, 1993.

[4][4] Bouwer, I. A. "On Edge But Not Vertex Transitive Regular Graphs." J. Combin. Th. Ser. B 12, 32-40, 1972.

Page 141: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 141/157

Grafo de Nauru 137

Grafo de Nauru

Grafo de Nauru

O grafo Nauru

vértices 24

arestas 36

Raio 4

Diâmetro 4

Cintura 6

Automorfismos 144 (S4×S

3)

Númerocromático

2

Índicecromático

3

Propriedades CúbicoHamiltoniano

simétricoIntegralBipartidoGrafo de Cayley

No campo da matemática da teoria dos grafos o grafo de Nauru é um grafo simétrico, bipartido cúbico com 24

vértices e 36 arestas. Foi nomeado por David Eppstein em alusão a estrela de doze pontas da bandeira do Nauru[1]

Ele tem número cromático 2, índice cromático 3, raio 4, diâmetro 4, e cintura 6 [2]. Ele também é

3-vértice-conectado, e 3-aresta-conectado.

Os menores grafos cúbicos com número de cruzamento entre 1 e 8 são conhecidos (sequência A110507 na OEIS). O

menor grafo com 8 cruzamentos é o grafo de Nauru. Existe 5 grafos cúbicos não-isomorfos de ordem 24 com

número de cruzamentos de 8[3]. Um deles é o grafo de McGee também conhecido como (3-7)-gaiola[4].

Page 142: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 142/157

Grafo de Nauru 138

ConstruçãoO grafo de Nauru é Hamiltoniano e pode ser descrito pela notação LCF : [5, −9, 7, −7, 9, −5]4.[1]

O grafo de Nauru também pode ser construído como o grafo de Petersen generalizado G(12, 5) que é formado pelos

vértices de um dodecágono, ligado aos vértices de uma estrela de doze pontos, em que cada ponta da estrela está

ligada aos pontos quer estão a cinco passos de distância dela.

Propriedades algébricasO grupo de automorfismo do grafo de Nauru é um grupo de ordem 144[5]. É isomórfico ao produto direto dos grupos

simétricos S 4

e S 3

e age transitivamente nos vértices, nas arestas e nos arcos do grafo. Portanto o grafo de Nauru é

um grafo simétrico (embora não seja distância-transitivo). Ele tem automorfismos que levam qualquer vértice para

qualquer outro vértice e qualquer aresta para qualquer outra aresta. De acordo com o censo de Foster , o grafo de

Nauru é o único grafo cúbico simétrico em 24 vértices[2].

O grafo generalizado de Petersen G(n,k ) é vértice-transitivo se e somente se n = 10 e k =2 ou se k 2 ≡ ±1 (mod n) e é

aresta-transitivo somente nos sete casos seguintes: (n,k ) = (4,1), (5,2), (8,3), (10,2), (10,3), (12,5), (24,5)[6]. Assim, o

grafo de Nauru é um de apenas sete grafos simétricos generalizados de Petersen. Entre estes sete grafos estão o grafocubico , o grafo de Petersen , o grafo de Möbius – Kantor , o grafo dodecaedro

e o grafo de Desargues .

O grafo de Nauru é um grafo de Cayley de S 4, o grupo de permutações simétricas em quatro elementos, gerados

pelas três maneiras diferentes de trocar o primeiro elemento com um dos outros três: (1 2), (1 3) e (1 4).

O polinômio característico do grafo de Nauru é igual a

tornando-o um grafo integral —um grafo cujo espectro consiste inteiramente de inteiros.

Toro simétrico incorporado

O toro é formado, topologicamente, colando-se arestas

opostas de um hexágono regular com o outro. Grafo de Petersen generalizado

As cores e permutações indicam, que este é um grafo

de Cayley de S 4.

Matriz de adjacência

Cada aresta é representada por duas entradas na mesma

cor, que são simétricas à diagonal principal.

Page 143: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 143/157

Grafo de Nauru 139

Propriedades topológicas

Uma incorporação simétrica do grafo de Nauru sobre uma superfície de gênero-4,

com seis faces dodecagonais.

O grafo de Nauru tem duas incorporções

diferentes como poliedros regulares

generalizados:

superfícies topológicas particionadas em

arestas, vértices e faces de tal forma que há

uma simetria levando qualquer bandeira

(uma tripla incidente de um vértice, uma

aresta e uma face) em qualquer outra

bandeira[7].

Uma destas duas incorporações forma um

toro, de modo que o grafo de Nauru é um

grafo toroidal: consiste de 12 faces

hexagonais, juntamente com os 24 vértices e

36 arestas do grafo de Nauru. O grafo dualdesta incorporação é um grafo simétrico

6-regular com 12 vértices e 36 arestas.

A outra incorporação simétrica do gráfico Nauru tem seis faces dodecagonais, e formas de uma superfície de gênero

4. Seu dual não é um grafo simples, uma vez que cada face compartilha três arestas com quatro outras faces, mas um

multigrafo. Este dual pode ser formado a partir do grafo de um octaedro regular substituindo cada aresta por um

feixe de três arestas paralelas.

O conjunto de faces de qualquer um destas duas incorporações é o conjunto de polígonos de Petrie da outra

incorporação.

Propriedades geométricas

O grafo de Nauru como um grafo unidade de distância, em Žitnik, Horvat &

Pisanski (2010).

Tal como acontece com todos os grafos

generalizados de Petersen, o grafo de Nauru

pode ser representado por pontos no plano

de tal forma que os vértices adjacentes estão

em unidade de distância à parte; isto é, ele é

um grafo distancia-unidade.[8] Ele e os

prismas são os únicos grafos generalizados

de Petersen G(n, p) que não pode ser

representado de tal forma que as simetrias

do desenho formam um grupo cíclico de

ordem n. Em vez disso, a representação de

seu grafo distancia-unidade tem o grupo

diedral Dih6

como o seu grupo de simetria.

Page 144: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 144/157

Grafo de Nauru 140

HistóriaA primeira pessoa a escrever sobre o gráfico Nauru foi R. M. Foster em um eforço para colecionar todos os grafos

cúbicos simétricos..[9]

[1] Eppstein, D., The many faces of the Nauru graph (http:/   /  11011110.  livejournal.  com/  124705.  html) on LiveJournal, 2007.

[2][2] Conder, M. and Dobcsányi, P. "Trivalent Symmetric Graphs Up to 768 Vertices." J. Combin. Math. Combin. Comput. 40, 41-63, 2002.

[3][3] .[5] Royle, G. F024A data (http:/   /  www. csse. uwa. edu. au/  ~gordon/  foster/  F024A.  html)

[7][7] .

[8][8] .

[9][9] .

Grafo de Pappus

Grafo de Pappus

O grafo de Pappus

Nomeado em

honra a

Pappus de Alexandria

vértices 18

arestas 27

Raio 4

Diâmetro 4

Cintura 6

Automorfismos 216

Número cromático 2

Índice cromático 3

Propriedades CúbicoHamiltonianoSimétricoDistância-transitivoDistância-regular

No campo da matemática da teoria dos grafos o grafo de Pappus é um grafo não-orientado 3-regular com 18

vértices e 27 arestas formado como o grafo de Levi da configuração de Pappus.[1] É nomeado em honra a Pappus de

Alexandria, um antigo matemático grego que se acredita ter descoberto o "teorema do hexágono" que descreve a

configuração de Pappus. Todos os grafos distância-regular cúbicos são conhecidos; o grafo de Pappus é um destes 13

grafos.[2]

Page 145: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 145/157

Grafo de Pappus 141

O grafo de Pappus tem um número de cruzamento retilíneo 5, e é o menor grafo cúbico com este número de

cruzamento. Tem cintura 6, diâmetro 4, raio 4, número cromático 2, índice cromático 3 e é tanto 3-vértice-conectado

quanto 3-aresta-conectado.

O grafo de Pappus tem um polinômio cromático igual a:

.O nome "grafo de Pappus" também tem sido usado para se referir a um grafo relacionado com nove vértices [3], com

um vértice para cada ponto da configuração de Pappus e uma aresta para cada par de pontos na mesma linha; este

grafo de nove vértice é 6-regular, e é o grafo complementar da união de três grafos triângulo disjuntos.

Propriedades algébricasO grupo de automorfismo do grafo de Pappus é um grupo de ordem 216. Ele age transitivamente sobre os vértices,

nas arestas e nos arcos do grafo. Portanto, o grafo de Pappus é im grafo simétrico. Ele tem automorfismos que levam

qualquer vértice para qualquer outro vértice e qualquer aresta para qualquer outra aresta. De acordo com o censo de

 Foster , o grafo de Biggs-Smith, referenciado como F018A, é o único grafo cúbico simétrico em 18 vértices.[4][5]

O polinômio característico do grafo de Pappus é: . É o único grafo com este

polinômio característico, tornando-se um grafo determinado pelo seu espectro.

Galeria

Grafo de Pappus colorido para destacar vários

ciclos.

O índice cromático do grafo de Pappus é 3. O número cromático do grafo de Pappus é 2.

[2][2] Brouwer, A. E.; Cohen, A. M.; and Neumaier, A. Distance-Regular Graphs. New York: Springer-Verlag, 1989.[4] Royle, G. "Cubic Symmetric Graphs (The Foster Census)." (http:/   /  www. cs. uwa. edu.  au/  ~gordon/  remote/  foster/  #census)

[5][5] Conder, M. and Dobcsányi, P. "Trivalent Symmetric Graphs Up to 768 Vertices." J. Combin. Math. Combin. Comput. 40, 41-63, 2002.

Page 146: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 146/157

Grafo de Petersen 142

Grafo de Petersen

Grafo de Petersen

O gráfico de Petersen é mais comumente desenhado como um pentágono com um pentagrama no interior, com cinco raios

Nomeado em honra a Julius Petersen

vértices 10

arestas 15

Raio 2

Diâmetro 2

Cintura 5

Automorfismos 120 (S5)

Número cromático 3

Índice cromático 4

Propriedades Cúbicografo fortemente regulardistância-transitivo

No campo da matemática da teoria dos grafos o grafo de Petersen é um grafo não-orientado com 10 vértices e 15

arestas. É um pequeno grafo que serve como um exemplo útil e contra-exemplo para muitos problemas em teoria dos

grafos. O grafo de Petersen é nomeado em honra a Julius Petersen, que em 1898 construiu o menor grafo cúbico sem

ponte cujas arestas não podem ser coloridas com somente três cores[1]. Embora o grafo seja geralmente creditado a

Petersen, ele tinha, de facto, aparecido pela primeira vez 12 anos antes, em 1886[2].

Donald Knuth afirma que o grafo de Petersen é "uma configuração notável que serve como um contra-exemplo para

muitas previsões otimistas sobre o que poderia ser verdade para os grafos em geral."[3]

Construções

O grafo de Petersen é o complementar do grafo linha de . É também o grafo Kneser ; isso significa que

ele tem um vértice para cada subconjunto de dois elementos de um conjunto de 5 elementos, e dois vértices são

conectados por uma aresta se e somente se os correspondentes subconjuntos de dois elementos são disjuntos entre si.

Como um grafo de Kneser da forma é um exemplo de um grafo ímpar.

Geometricamente, o grafo de Petersen é o grafo formado pelos vértices e arestas do hemi-dodecaedro, ou seja, um

dodecaedro com os pontos opostos, linhas e faces identificadas em conjunto.

Page 147: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 147/157

Grafo de Petersen 143

IncorporaçõesO grafo de Petersen é não-planar. Qualquer grafo não planar tem como menores tanto o grafo completo , quanto

o grafo bipartido completo , mas o grafo de Petersen tem ambos os menores. O menor pode ser formado

restringindo-se as arestas de um acoplamento perfeito, por exemplo as cinco arestas curtas na primeira figura. O

menor pode ser formado se deletando um vértice (por exemplo, o vértice central do desenho do 3-simétrico) e

contratando uma aresta incidente para cada vizinho do vértice que foi excluído.

O grafo de Petersen tem número de cruzamento 2.

O mais comum e simétrico desenho do plano do grafo de Petersen,

como um pentagrama dentro de um pentágono, tem cinco cruzamentos.

No entanto, este não é o melhor desenho que minimiza os

cruzamentos; existe um outro desenho (mostrado na figura), com

apenas dois cruzamentos. Assim, o grafo de Petersen tem número de

cruzamento 2. Em um toro o grafo de Petersen pode ser desenhado sem

cruzamentos de arestas; tem, portanto, gênero orientável 1.

O grafo de Petersen é um grafo distância-unidade:

ele pode ser desenhado no plano com cada aresta

tendo comprimento de uma unidade.

O grafo de Petersen também pode ser desenhado (com cruzamentos)

no plano de tal forma que todas as arestas tenham o mesmo

comprimento. Ou seja, ele é um grafo distância-unidade.

A mais simples superfície não orientável em que o grafo de Petersen

pode ser incorporado sem cruzamentos é o plano projetivo. Esta é aincorporação dada pela construção em hemi-dodecaedro do grafo de

Petersen. A incorporação no plano projetivo também pode ser formada

a partir do desenho padrão pentagonal do gráfico Petersen, colocando

uma superfície cross-cap dentro da estrela de cinco pontas no centro do

desenho, e dirigundo as arestas da estrela através desta cross-cap; o

desenho resultante tem seis faces pentagonais. Esta construção forma

um mapa regular e mostra que o grafo de Petersen tem um género

não-orientável 1.

SimetriasO grafo de Petersen é fortemente regular (com assinatura srg(10,3,0,1)). É também simétrico, o que significa que é

aresta-transitivo e vértice-transitivo. Mais fortemente, é de 3-arcos-transitivo: cada caminho de três arestas dirigidas

no grafo de Petersen pode ser transformado em qualquer outro tipo de percurso por uma simetria do grafo. [4]

[4][4] .

Page 148: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 148/157

Grafo de Shrikhande 144

Grafo de Shrikhande

Grafo deShrikhande

Nomeado emhonra a

S. S. Shrikhande

vértices 16

arestas 48

Raio 2

Diâmetro 2

Cintura 3

Automorfismos 192

Número cromático 4

Índice cromático 6

Propriedades SimétricoEulerianoHamiltonianoIntegralFortemente regular

No campo da matemática da teoria dos grafos, o Grafo de Shrikhande é um grafo nomeado descoberto por S. S.

Shrikhande em 1959.[1] é um grafo fortemente regular com 16 vértices e 48 arestas, com cada vértice tendo um grau

de 6.

PropriedadesNo grafo de Shrikhande, quaisquer dois vértices I e J têm dois vizinhos distintos em comum (excluindo os próprios

dois vértices I e J), o que é verdade independentemente de I ser adjacente a J. Em outras palavras, seus parâmetros

para ser fortemente regulares são: {16,6,2,2}, com , esta igualdade implicando que o grafo é associado

a um BIBD simétrico. Ele compartilha esses parâmetros com um grafo diferente, o 4×4 grafo torre (rook's graph).

O grafo de Shrikhande é localmente hexagonal; isto é, os vizinhos de cada vértice formam um grafo ciclo de seis

vértices. Como em qualquer grafo localmente cíclico, o grafo de Shrikhande é o 1-esqueleto de uma triangulação de

Whitney de alguma superfície; no caso do grafo de Shrikhande, esta superfície é um toro em que cada vértice é

cercado por seis triângulos.[2] Assim, o grafo de Shrikhande é um grafo toroidal. O dual desta incorporação é o grafo

de Dick, um grafo cúbico simétrico.

O grafo de Shrikhande não é um grafo distância-transitivo. É o menor grafo distância-regular que não é adistância-transitivo.[3]

Page 149: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 149/157

Grafo de Shrikhande 145

O grupo de automorfismo do grafo de Shrikhande é da ordem de 192. Ele age transitivamente sobre os vértices, nas

arestas e nos arcos do grafo.

O polinômio característico do grafo de Shrikhande é: . Portanto o grafo de Shrikhande

é um grafo integral: seu espectro consiste inteiramente de inteiros.[1][1] .

[2][2] .[3][3] .

Ligações externas• O grafo de Shrikhande (http:/   /  cameroncounts. wordpress. com/  2010/  08/  26/  the-shrikhande-graph/  ) , Peter

Cameron, Agosto de 2010.

Galeria

O grafo de Shrikhande é um

grafo toroidal.

O número cromático

do grafo de

Shrikhande é 4.

O índice cromático

do grafo de

Shrikhande é 6.

O grafo de

Shrikhande

desenhado

simetricamente.

O grafo de Shrikhande é

Hamiltoniano.

Page 150: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 150/157

Grafos de Chang 146

Grafos de Chang

Grafos de Chang

À direita da árvore os grafos de Chang; estes grafos são gerados selecionando uma mudança adequada no conjunto de vértices. Àesquerda os grafos triangulares T8 originários: os vértices do conjunto de comutação são verdes, as arestas são vermelhas e as novas

adicionadas em azul.vértices 28

arestas 168

Propriedades Fortemente regular

No campo da matemática da teoria dos grafos, os Grafos de Chang são um conjunto de grafos de árvore, que são

um grafo 18-regular não-orientados com 28 vértices e 168 arestas.

Ligações externas• Weisstein, Eric W. "Chang Graphs." de MathWorld--A Wolfram Web Resource. http:/   /  mathworld. wolfram.

com/  ChangGraphs. html [1]

• Página de Andries E. Brouwer's sobre grafos de Chang [2]

• Página de Nadia Hamoud, "Os grafos de Chang" [3]

Referências[1] http:/   /  mathworld.  wolfram. com/  ChangGraphs.  html

[2] http:/   /  www. win.tue.  nl/  ~aeb/  graphs/  Chang.  html

[3] http:/   /  math.  ucdenver.  edu/  ~wcherowi/  courses/  m6023/  nadia. pdf 

Page 151: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 151/157

Fontes e Editores da Página 147

Fontes e Editores da PáginaSete pontes de Königsberg  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34441180 Contribuidores: Agiesbrecht, Bonás, Cícero, Diego UFCG, Fasouzafreitas, Jcb, JucaZero, Kaktus Kid,LeonardoRob0t, Maxtremus, Mschlindwein, Nuno Tavares, Opera Omnia, Oraculo, OtavioCC, Paulonei, Selenium, Thegoergen, Zdtrlik, 16 edições anónimas

Teoria dos grafos  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34399998 Contribuidores: 200.249.56.xxx, 2A02:8109:8140:11:E1B4:C844:FFBC:7111, Al Lemos, AndreHahn, Bonás,BrunoSupremo, Carbol, Cícero, Daniel Dias Branco Arthaud, Diego UFCG, Dotti, E2m, Faustino.F, Firer, GOE, Hallel, Helder.wiki, Israelrocha, JSSX, JoaoMiranda, Jonex, Jorge, Lechatjaune,Leonardo.stabile, LeonardoG, LeonardoRob0t, Lusitana, Luís Felipe Braga, Manuel Anastácio, Maxtremus, Mrsouza, Muriel Gottrop, Nuno Tavares, OS2Warp, Opaulo, Pdellani, Polyethylen,

Quiumen, Rei-artur, Ricardo Ferreira de Oliveira, Rickhard 22, Rlopes, Roxul84, Ruy Pugliesi, Rômulo Penido, SHASTA136013.ig.com.br, Salgueiro, Sobao, Stego, Thiago Serra,Thiagoprocaci, Viniciusmc, Webkid, Yanguas, 97 edições anónimas

Grafo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34486206 Contribuidores: Colaborador Z, Cícero, Der kenner, FSogumo, Faustino.F, FelipeVargasRigo, Hallel, Humbertobrandao,Israelrocha, JotaCartas, Lechatjaune, Leonardo.stabile, LeonardoG, Luiz Jr, Maxtremus, Michelmfb, Nuno Tavares, Rcaetano, Ricardo Ferreira de Oliveira, Rômulo Penido, Salgueiro, Stegop,TradutoresJEDI, Villarinho, 34 edições anónimas

Vértice  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34987970 Contribuidores: Eamaral, Ricardo Ferreira de Oliveira, 2 edições anónimas

Aresta  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34692577 Contribuidores: Ricardo Ferreira de Oliveira

Aresta múltipla  Fonte: http://pt.wikipedia.org/w/index.php?oldid=28562358 Contribuidores: Alexg, JSSX, 2 edições anónimas

Ciclos em um grafo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34986042 Contribuidores: Adolfont, Ricardo Ferreira de Oliveira, Waltercruz, 1 edições anónimas

Clique  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34435881 Contribuidores: Csandrocampos, Cícero, Fabiano Tatsch, Nuno Tavares, Pintopc, RafaAzevedo, Ricardo Ferreira deOliveira, Rui Silva, Salgueiro, 5 edições anónimas

O grau de um grafo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35143904 Contribuidores: Ricardo Ferreira de Oliveira, 1 edições anónimas

Grafo bipartido  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141642 Contribuidores: Amcorreia, Ricardo Ferreira de Oliveira, Vanthorn, 1 edições anónimas

Grafo bipartido completo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141649 Contribuidores: Ricardo Ferreira de Oliveira

Grafo caminho  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141654 Contribuidores: FSogumo, Ricardo Ferreira de Oliveira, Vanthorn

Grafo completo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34490966 Contribuidores: Bonás, Cícero, Jcmo, Lameiro, NunoMota, Ramzysamman, Ricardo Ferreira de Oliveira,Salgueiro, Zdtrlik, 3 edições anónimas

Grafo cúbico  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141668 Contribuidores: Ricardo Ferreira de Oliveira, Zdtrlik

Grafo Estrela  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35075881 Contribuidores: Ricardo Ferreira de Oliveira, Zdtrlik

Grafo nulo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141778 Contribuidores: Ricardo Ferreira de Oliveira, Vanthorn

Grafo orientado  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141781 Contribuidores: Kaktus Kid, Lijealso, Ricardo Ferreira de Oliveira, Rickgauden, Stegop, 2 edições anónimas

Grafo simples  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35338323 Contribuidores: 2801:A0:1:1:216:3EFF:FE1D:C671, Bonás, Cícero, Fernando S. Aldado, Marivb, Rlopes, Salgueiro,12 edições anónimas

Grafo valorado  Fonte: http://pt.wikipedia.org/w/index.php?oldid=28843203 Contribuidores: FelipeVargasRigo, Leonardo.stabile, Ricardo Ferreira de Oliveira, Yanguas, 1 edições anónimas

Homomorfismo de grafos  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35308493 Contribuidores: HanielBarbosa, Kaktus Kid, 1 edições anónimas

Isomorfismo de grafos  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35167823 Contribuidores: Ricardo Ferreira de Oliveira, 2 edições anónimas

Laço  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35159317 Contribuidores: Eduardo P, Ricardo Ferreira de Oliveira

Multigrafo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35137054 Contribuidores: Alexg, HanielBarbosa, Ricardo Ferreira de Oliveira, 3 edições anónimas

Pseudografo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=8900044 Contribuidores: Alexg, HanielBarbosa, Ricardo Ferreira de Oliveira, 3 edições anónimas

Quiver  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35037982 Contribuidores: Al Lemos, Leyo, Ricardo Ferreira de Oliveira, Rodrigo Devolder, 1 edições anónimas

Vértice de corte (teoria dos grafos)  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35201304 Contribuidores: Eduardo P, Ricardo Ferreira de Oliveira, 5 edições anónimas

Vizinhança  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34981109 Contribuidores: Asturius, Ricardo Ferreira de Oliveira

Árvores  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34942902 Contribuidores: Jpcwiki, Leonardo.stabile, Luishsousa, Luiz Jr, Ricardo Ferreira de Oliveira, Salamat, 4 edições anónimas

Árvore de extensão  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35061145 Contribuidores: Alexg, Ricardo Ferreira de Oliveira, Rômulo Penido, 4 edições anónimas

Árvore de extensão mínima  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34916369 Contribuidores: Alessandro70, Belanidia, Cícero, Danielamaral, Leonardo.stabile, Less, Lond,

Reynaldo, Ricardo Ferreira de Oliveira, Rômulo Penido, Salgueiro, Ungoliant MMDCCLXIV, 5 edições anónimas

Matriz de adjacência  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34718389 Contribuidores: BMalajovich, Chaves, Cícero, E2mb0t, FelipeVargasRigo, Leonardo.stabile, Lucas081994,Marivb, Ricardo Ferreira de Oliveira, Salgueiro, 17 edições anónimas

Matriz de incidência  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35182861 Contribuidores: FelipeVargasRigo, 1 edições anónimas

Lista de adjacência  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35176950 Contribuidores: Eric Duff, Hermógenes Teixeira Pinto Filho, Lijealso, Ricardo Ferreira de Oliveira, 5 ediçõesanónimas

Automorfismo de grafos  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35208064 Contribuidores: Ricardo Ferreira de Oliveira, Ruy Pugliesi, 2 edições anónimas

Grafo regular  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141784 Contribuidores: Marlus Gancher, Ricardo Ferreira de Oliveira, Zdtrlik

Grafo fortemente regular  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141766 Contribuidores: Ricardo Ferreira de Oliveira, Vanthorn

Grafo distância-regular  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141761 Contribuidores: Ricardo Ferreira de Oliveira, Vanthorn

Grafo distância-transitivo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141764 Contribuidores: Ricardo Ferreira de Oliveira, Vanthorn

Grafo simétrico  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141788 Contribuidores: Ricardo Ferreira de Oliveira, Zdtrlik

Grafo meio-transitivo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141771 Contribuidores: Ricardo Ferreira de Oliveira, Vanthorn

Grafo semissimétrico  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141786 Contribuidores: Ricardo Ferreira de Oliveira, Yanguas, Zdtrlik

Page 152: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 152/157

Fontes e Editores da Página 148

Grafo aresta-transitivo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141629 Contribuidores: Ricardo Ferreira de Oliveira, Vanthorn

Grafo vértice-transitivo  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141790 Contribuidores: Ricardo Ferreira de Oliveira, Vanthorn, 1 edições anónimas

Grafo de Cayley  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141678 Contribuidores: Eamaral, JotaCartas, Ricardo Ferreira de Oliveira, Vanthorn

Grafo antissimétrico  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141627 Contribuidores: Blamed, Ricardo Ferreira de Oliveira, Zdtrlik

Grafo assimétrico  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141635 Contribuidores: Ricardo Ferreira de Oliveira, Zdtrlik

Busca em largura  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34520693 Contribuidores: Aexpedito, Ariel C.M.K., Cícero, Diego Queiroz, EduM, FelipeVargasRigo, Fernando S.Aldado, Hugo Baés, LeonardoG, Maxtremus, Nuno Tavares, O CoRVo, Olavom, Renato Rebouças, Ricardo Ferreira de Oliveira, Sa lgueiro, Vini 175, 20 edições anónimas

Busca em profundidade  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34520840 Contribuidores: Bjmedeiros, BrunoSupremo, Cícero, FSogumo, FelipeVargasRigo, Fernando S. Aldado,Hermógenes Teixeira Pinto Filho, Leonardo.stabile, Maxtremus, Nuno Tavares, Olavom, 17 edições anónimas

Caminho  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35318599 Contribuidores: AndreHahn, Quiumen, 2 edições anónimas

Caminho euleriano  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34883878 Contribuidores: ErikvanB, Kaktus Kid, Marcelloc2, Maxtremus, Ricardo Ferreira de Oliveira, UlrichSchiel, 6edições anónimas

Caminho hamiltoniano  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34471945 Contribuidores: Andrevruas, Cícero, Humbertobrandao, Jic, Lechatjaune, Luiz Jr, Maxtremus,OTAVIO1981, Reynaldo, Ricardo Ferreira de Oliveira, Rômulo Penido, Salgueiro, 10 edições anónimas

Ordenação topológica  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34853369 Contribuidores: Ricardo Ferreira de Oliveira, S imãoMiguel, 4 edições anónimas

Algoritmo de Bellman-Ford  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34442419 Contribuidores: BrunoSupremo, Cícero, Dermeister, Elloabguedes, FelipeVargasRigo, Glum,Hermógenes Teixeira Pinto Filho, Leonardo.stabile, Patrick, 15 edições anónimas

Algoritmo A*  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34646636 Contribuidores: BrunoSupremo, ChristianH, Dhminholi, FelipeVargasRigo, GRS73, Hermógenes Teixeira PintoFilho, Hgfernan, Leonardo.stabile, Mschlindwein, Thom, 12 edições anónimas

Algoritmo de Floyd-Warshall  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34646695 Contribuidores: Cícero, FelipeVargasRigo, Lameiro, Lampiao, Leonardo.stabile, Ricardo Ferreira deOliveira, SrMeneses, 28 edições anónimas

Algoritmo de Johnson  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34646698 Contribuidores: Auréola, Dbastro, Jonas AGX, 2 edições anónimas

Algoritmo de Kruskal  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34442529 Contribuidores: CommonsDelinker, Cícero, Danielamaral, Danielcc10, FelipeVargasRigo, Giro720, KaktusKid, Leonardo.stabile, Maxtremus, Osias, Ricardo Ferreira de Oliveira, Salgueiro, 27 edições anónimas

Algoritmo de Prim  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34494498 Contribuidores: Aexpedito, Cícero, Firmo, Gkitchmaker, Indech, Leonardo.stabile, LeonardoG, MartinianoHilário, Ricardo Ferreira de Oliveira, Rômulo Penido, 20 edições anónimas

Algoritmo de Dijkstra  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34440939 Contribuidores: Adailton, Attom, Bortolozzi, Chicocvenancio, CommonsDelinker, Danielcc10, Desnes,Diego UFCG, FelipeVargasRigo, Gfonsecabr, Gruberdiego, JotaCartas, Juntas, Leonardo.stabile, Lijealso, Manuel Anastácio, Mecanismo, Osias, Pedro Ivan de Albuquerque Lima, RicardoFerreira de Oliveira, Rui Malheiro, Suisui, Xico.nunes, 69 edições anónimas

Algoritmo de Boruvka  Fonte: http://pt.wikipedia.org/w/index.php?oldid=34454832 Contribuidores: Cícero, Manuel Anastácio, Nuno Tavares, Osias, Pedra, Ricardo Ferreira de Oliveira,Salgueiro, 9 edições anónimas

Grafo de Biggs-Smith  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141672 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Brouwer-Haemers  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141675 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Desargues  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141692 Contribuidores: Ricardo Ferreira de Oliveira, Rossi pena

Grafo de Folkman  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141696 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Foster  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141699 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Frucht  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141704 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Gray  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141712 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Heawood  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141716 Contribuidores: Alexg, Ricardo Ferreira de Oliveira

Grafo de Higman-Sims  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141718 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Hoffman-Singleton  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141720 Contribuidores: Koko90, Ricardo Ferreira de Oliveira

Grafo de Holt  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141725 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Ljubljana  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141728 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Nauru  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35466463 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Pappus  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141736 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Petersen  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35569975 Contribuidores: Ricardo Ferreira de Oliveira

Grafo de Shrikhande  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141749 Contribuidores: Ricardo Ferreira de Oliveira

Grafos de Chang  Fonte: http://pt.wikipedia.org/w/index.php?oldid=35141793 Contribuidores: Ricardo Ferreira de Oliveira

Page 153: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 153/157

Fontes, Licenças e Editores da Imagem 149

Fontes, Licenças e Editores da ImagemFicheiro:Pontes Königsberg.JPG  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Pontes_Königsberg.JPG  Licença: Public Domain Contribuidores: Original uploader was DiegoUFCG at pt.wikipedia

Ficheiro:Konigsburg graph.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Konigsburg_graph.png  Licença: GNU Free Documentation License Contribuidores: Nux, Squizzz

Ficheiro:Grafo k4 plano.PNG  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Grafo_k4_plano.PNG  Licença: GNU Free Documentation License Contribuidores: Original uploaderwas Marivb at pt.wikipedia

Imagem:6n-graf.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:6n-graf.svg  Licença: Public Domain Contribuidores: User:AzaToth

Ficheiro:6n-graf.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:6n-graf.svg  Licença: Public Domain Contribuidores: User:AzaToth

Ficheiro:Aresta.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Aresta.png  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Ricardo Ferreira de Oliveira

File:VR complex.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:VR_complex.svg  Licença: Public Domain Contribuidores: David Eppstein

Image:UndirectedDegrees.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:UndirectedDegrees.svg  Licença: GNU Free Documentation License Contribuidores: Melchoir

Ficheiro:Conjugate-dessins.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Conjugate-dessins.svg  Licença: Public Domain Contribuidores: David Eppstein

Ficheiro:Depth-first-tree.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Depth-first-tree.png  Licença: GNU Free Documentation License Contribuidores: Alexander Drichel,Braindrain0000, Bukk, Dcoetzee, EugeneZelenko, Regnaron, 2 edições anónimas

Image:Simple-bipartite-graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Simple-bipartite-graph.svg  Licença: Public Domain Contribuidores: MistWiz

Ficheiro:RecursiveEvenBipartite.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:RecursiveEvenBipartite.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Melchoir

Image:Biclique K 3 5.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Biclique_K_3_5.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores:Koko90

Image:Star graphs.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Star_graphs.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Biclique K 3 3.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Biclique_K_3_3.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores:Koko90

Image:Path-graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Path-graph.svg  Licença: Public Domain Contribuidores: Momotaro

Ficheiro:Petersen1 tiny.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Petersen1_tiny.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Leshabirukov

Ficheiro:Biclique_K_3_3.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Biclique_K_3_3.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Frucht graph.dot.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Frucht_graph.dot.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Koko90

Image:Star_network_7.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Star_network_7.svg  Licença: GNU Free Documentation License Contribuidores: Merdis

Image:Directed.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Directed.svg  Licença: Public Domain Contribuidores: Grafite, Jcb, Josette, 2 edições anónimas

Image:DirectedDegrees.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:DirectedDegrees.svg  Licença: GNU Free Documentation License Contribuidores: Melchoir

Imagem:Directed acyclic graph 2.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Directed_acyclic_graph_2.svg  Licença: Public Domain Contribuidores: Johannes Rössel (talk)

Image:4-tournament.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:4-tournament.svg  Licença: Public Domain Contribuidores: Booyabazooka

Ficheiro:Prim Algorithm 0.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_0.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Alexander Drichel

Image:Graph isomorphism a.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Graph_isomorphism_a.svg  Licença: GNU Free Documentation License Contribuidores:User:Booyabazooka

Image:Graph isomorphism b.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Graph_isomorphism_b.svg  Licença: GNU Free Documentation License Contribuidores:User:Booyabazooka

Image:Whitneys theorem exception.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Whitneys_theorem_exception.svg  Licença: Public Domain Contribuidores: User:Dcoetzee*derivative work: Dcoetzee (talk) Complete_graph_K3.svg: Dbenbenn Complete_bipartite_graph_K3,1.svg: Dbenbenn

Ficheiro:6n-graph2.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:6n-graph2.svg  Licença: Public Domain Contribuidores: Booyabazooka, Dcoetzee, 1 edições anónimas

Imagem:Multi-pseudograph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Multi-pseudograph.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores:0x24a537r9

Ficheiro:Directed.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Directed.svg  Licença: Public Domain Contribuidores: Grafite, Jcb, Josette, 2 edições anónimas

Ficheiro:Undirected chain articulation points.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Undirected_chain_articulation_points.svg  Licença: Public Domain Contribuidores: ~ Booya Bazooka. Original uploader was Booyabazooka at en.wikipedia

Ficheiro:Undirected.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Undirected.svg  Licença: Public Domain Contribuidores: JMCC1, Josette, Kilom691, 2 edições anónimas

Image:6n-graf.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:6n-graf.svg  Licença: Public Domain Contribuidores: User:AzaToth

Image:Octahedron graph.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Octahedron_graph.png  Licença: GNU Free Documentation License Contribuidores: User:Arbor

Ficheiro:Tree graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Tree_graph.svg  Licença: Public Domain Contribuidores: Dcoetzee, Tacsipacsi, Tizio

Ficheiro:4x4 grid spanning tree.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:4x4_grid_spanning_tree.svg  Licença: Public Domain Contribuidores: David Eppstein

Ficheiro:Minimum spanning tree.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Minimum_spanning_tree.svg  Licença: Public Domain Contribuidores: User:Dcoetzee

Imagem:6n-graph2.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:6n-graph2.svg  Licença: Public Domain Contribuidores: Booyabazooka, Dcoetzee, 1 edições anónimas

File:Lista de adjacencia.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Lista_de_adjacencia.png  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores:

Ricardo Ferreira de Oliveira

File:GuidoRossum.PNG  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:GuidoRossum.PNG  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: RicardoFerreira de Oliveira

Imagem:Petersen1 tiny.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Petersen1_tiny.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Leshabirukov

Ficheiro:Dodecahedral graph.neato.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Dodecahedral_graph.neato.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Koko90

Ficheiro:Arrow east.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Arrow_east.svg  Licença: Public Domain Contribuidores: User:MarianSigler

Ficheiro:Shrikhande graph square.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Shrikhande_graph_square.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Arrow west.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Arrow_west.svg  Licença: Public Domain Contribuidores: User:MarianSigler

Ficheiro:Paley13 no label.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Paley13_no_label.svg  Licença: Public Domain Contribuidores: Paley13.svg: Original uploader wasDavid Eppstein at en.wikipedia derivative work: Koko90 (talk)

Ficheiro:Arrow south.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Arrow_south.svg  Licença: Public Domain Contribuidores: User:MarianSigler

Ficheiro:F26A graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:F26A_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores:Koko90

Ficheiro:Nauru graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Nauru_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores:

Koko90

Ficheiro:Holt graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Holt_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Folkman graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Folkman_graph.svg  Licença: Public Domain Contribuidores: David Eppstein

Page 154: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 154/157

Fontes, Licenças e Editores da Imagem 150

Ficheiro:Biclique K 3 5.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Biclique_K_3_5.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores:Koko90

Ficheiro:Truncated tetrahedral graph.circo.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Truncated_tetrahedral_graph.circo.svg  Licença: Creative CommonsAttribution-Sharealike 3.0 Contribuidores: Koko90

Ficheiro:Frucht graph.neato.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Frucht_graph.neato.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores:Koko90

Ficheiro:Arrow north.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Arrow_north.svg  Licença: Public Domain Contribuidores: User:MarianSigler

Imagem:Z 2xZ 3.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Z_2xZ_3.svg  Licença: Public Domain Contribuidores: Tosha

Image:0-regulární graf na 6 vrcholech.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:0-regulární_graf_na_6_vrcholech.png  Licença: Public Domain Contribuidores: Original

uploader was Pavel Kotrč at cs.wikipediaImage:1-regulární graf na 6 vrcholech.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:1-regulární_graf_na_6_vrcholech.svg  Licença: Public Domain Contribuidores: Originaluploader was Pavel Kotrč at c s.wikipedia, SVG by User:Jxjl

Image:2-regulární graf na 6 vrcholech.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:2-regulární_graf_na_6_vrcholech.svg  Licença: Public Domain Contribuidores:User:Superm401, based on work by Pavel Kotrč

File:3-regular graph2.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:3-regular_graph2.svg  Licença: Public Domain Contribuidores: AASoft, SVG: Marlus_Gancher

Imagem:Paley13.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Paley13.svg  Licença: Public Domain Contribuidores: Original uploader was David Eppstein at en.wikipedia

Image:Shrikhande graph square.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Shrikhande_graph_square.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:BiggsSmith.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:BiggsSmith.svg  Licença: Public Domain Contribuidores: Original uploader was Stolee at en.wikipedia

Image:Petersen1 tiny.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Petersen1_tiny.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Leshabirukov

Imagem:Folkman graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Folkman_graph.svg  Licença: Public Domain Contribuidores: David Eppstein

Image:Gray graph 2COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Gray_graph_2COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:TruncatedTetrahedron.gif   Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:TruncatedTetrahedron.gif  Licença: Public domain Contribuidores: Radagast3

Image:Cayley graph of F2.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Cayley_graph_of_F2.svg  Licença: Public Domain Contribuidores: User:Dbenbenn

Image:Cayley Graph of Dihedral Group D4.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Cayley_Graph_of_Dihedral_Group_D4.svg  Licença: Public Domain Contribuidores: User:Denisgomes, User:Lipedia

Image:Period-3-graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Period-3-graph.svg  Licença: Public Domain Contribuidores: Original uploader was David Eppstein aten.wikipedia

Image:Asym-graph.PNG  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Asym-graph.PNG  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Mikkalai

File:Frucht graph.dot.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Frucht_graph.dot.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Koko90

Ficheiro:Breadth-First-Search-Algorithm.gif   Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Breadth-First-Search-Algorithm.gif  Licença: Creative CommonsAttribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Mre

Image:Breadth-first search Algorithm.gif   Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Breadth-first_search_Algorithm.gif  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: User:Aexpedito

Ficheiro:MapGermanyGraph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:MapGermanyGraph.svg  Licença: Public Domain Contribuidores: AndreasPraefcke, Mapmarks,MistWiz, Regnaron

Ficheiro:GermanyBFS.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:GermanyBFS.svg  Licença: Public Domain Contribuidores: Regnaron

Ficheiro:Depthfirst.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Depthfirst.png  Licença: GNU Free Documentation License Contribuidores: User:Baruneju

Ficheiro:graph.traversal.example.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Graph.traversal.example.svg  Licença: GNU Free Documentation License Contribuidores:Miles

Ficheiro:konigsburg graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Konigsburg_graph.svg  Licença: GNU Free Documentation License Contribuidores: AnonMoos,Piotrus, Riojajar, Squizzz

Ficheiro:Labelled Eulergraph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Labelled_Eulergraph.svg  Licença: Public Domain Contribuidores: S Sepp

Ficheiro:Hamilton path.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Hamilton_path.svg  Licença: Creative Commons Attribution-Sharealike 2.5 Contribuidores: Actam,Superborsuk, 1 edições anónimas

Ficheiro:Hamilton path.gif   Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Hamilton_path.gif  Licença: Creative Commons Attribution-ShareAlike 3.0 Unported Contribuidores:Claudio Rocchini

Ficheiro:Hamiltonian path.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Hamiltonian_path.svg  Licença: Creative Commons Attribution-ShareAlike 3.0 Unported Contribuidores: Christoph Sommer

Ficheiro:Mycielski graph k4 hamiltonian path.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Mycielski_graph_k4_hamiltonian_path.svg  Licença: Public Domain Contribuidores: Dcoetzee, Mlepicki

Image:Directed acyclic graph.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Directed_acyclic_graph.png  Licença: Public Domain Contribuidores: Anarkman, Dcoetzee, Ddxc,EugeneZelenko, Fæ, Joey-das-WBF

File:Johnson's algorithm.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Johnson's_algorithm.svg  Licença: Public Domain Contribuidores: David Eppstein

Ficheiro:Kruskal Algorithm 1.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Kruskal_Algorithm_1.svg  Licença: Public Domain Contribuidores: Maksim, Yuval Madar

Ficheiro:Kruskal Algorithm 2.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Kruskal_Algorithm_2.svg  Licença: Public Domain Contribuidores: Maksim, Yuval Madar

Ficheiro:Kruskal Algorithm 3.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Kruskal_Algorithm_3.svg  Licença: Public Domain Contribuidores: Maksim, Yuval MadarFicheiro:Kruskal Algorithm 4.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Kruskal_Algorithm_4.svg  Licença: Public Domain Contribuidores: Maksim, Yuval Madar

Ficheiro:Kruskal Algorithm 5.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Kruskal_Algorithm_5.svg  Licença: Public Domain Contribuidores: Maksim, Yuval Madar

Ficheiro:Kruskal Algorithm 6.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Kruskal_Algorithm_6.svg  Licença: Public Domain Contribuidores: Maksim, Yuval Madar

Ficheiro:Prim.PNG  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim.PNG  Licença: desconhecido Contribuidores: Original uploader was Rômulo Penido at pt.wikipedia

Image:Prim Algorithm 0.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_0.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Alexander Drichel

Image:Prim Algorithm 1.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_1.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Alexander Drichel, Stefan Birkner

Image:Prim Algorithm 2.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_2.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Alexander Drichel, Stefan Birkner

Image:Prim Algorithm 3.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_3.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Alexander Drichel, Stefan Birkner

Image:Prim Algorithm 4.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_4.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Alexander Drichel, Stefan Birkner

Image:Prim Algorithm 5.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_5.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0

 Contribuidores: Alexander Drichel, Stefan BirknerImage:Prim Algorithm 6.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_6.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Alexander Drichel, Stefan Birkner

Page 155: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 155/157

Fontes, Licenças e Editores da Imagem 151

Image:Prim Algorithm 7.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Prim_Algorithm_7.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Alexander Drichel, Stefan Birkner

Image:Dijkstra_Animation.gif   Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Dijkstra_Animation.gif  Licença: Public Domain Contribuidores: Ibmua

Image:Biggs-Smith graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Biggs-Smith_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Imagem:Biggs-Smith graph 3COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Biggs-Smith_graph_3COL.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Imagem:Biggs-Smith graph 3color edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Biggs-Smith_graph_3color_edge.svg  Licença: Creative CommonsAttribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Imagem:BiggsSmith.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:BiggsSmith.svg  Licença: Public Domain Contribuidores: Original uploader was Stolee at en.wikipediaFile:Brouwer Haemers graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Brouwer_Haemers_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Claudio Rocchini

Image:DesarguesGraph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:DesarguesGraph.svg  Licença: Public Domain Contribuidores: David Eppstein

Image:Desargues graph colored.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Desargues_graph_colored.svg  Licença: Creative Commons Attribution-Share Alike Contribuidores: R. A. Nonenmacher

Image:Desargues graph 3color edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Desargues_graph_3color_edge.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Koko90

Image:Desargues graph 2COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Desargues_graph_2COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Koko90

Image:Folkman graph alt.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Folkman_graph_alt.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Folkman graph 4color edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Folkman_graph_4color_edge.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Folkman graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Folkman_graph.svg  Licença: Public Domain Contribuidores: David Eppstein

File:Folkman Lombardi.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Folkman_Lombardi.svg  Licença: Public Domain Contribuidores: David Eppstein

Image:Foster graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Foster_graph.svg  Licença: Creative Commons Attribution-ShareAlike 3.0 Unported Contribuidores: ClaudioRocchini

Ficheiro:Foster graph colored.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Foster_graph_colored.svg  Licença: Creative Commons Attribution-Share Alike Contribuidores:R. A. Nonenmacher

Ficheiro:Foster graph 2COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Foster_graph_2COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Foster_graph_3color_edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Foster_graph_3color_edge.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

File:frucht graph.neato.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Frucht_graph.neato.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Koko90

Ficheiro:frucht_graph.dot.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Frucht_graph.dot.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Koko90

Ficheiro:Frucht_graph_3COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Frucht_graph_3COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores:Koko90

Ficheiro:Frucht Lombardi.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Frucht_Lombardi.svg  Licença: Public Domain Contribuidores: David Eppstein

Image:Gray graph hamiltonian.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Gray_graph_hamiltonian.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Gray graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Gray_graph.svg  Licença: Public Domain Contribuidores: David Eppstein

Ficheiro:gray_graph_2COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Gray_graph_2COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:gray_graph_3color_edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Gray_graph_3color_edge.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Gray configuration.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Gray_configuration.svg  Licença: Public Domain Contribuidores: David Eppstein

Image:Heawood Graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Heawood_Graph.svg  Licença: Creative Commons Attribution-Share Alike Contribuidores: R. A.Nonenmacher

Image:Szilassi polyhedron.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Szilassi_polyhedron.svg  Licença: Public Domain Contribuidores: David Eppstein

Ficheiro:3-crossing Heawood graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:3-crossing_Heawood_graph.svg  Licença: Public Domain Contribuidores: David Eppstein

Ficheiro:Heawood graph 3color edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Heawood_graph_3color_edge.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Heawood graph 2COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Heawood_graph_2COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:7x-torus.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:7x-torus.svg  Licença: Public Domain Contribuidores: Original uploader was David Eppstein at en.wikipedia

Image:Higman Sims Graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Higman_Sims_Graph.svg  Licença: Creative Commons Attribution 3.0 Contribuidores: ClaudioRocchini

Image:Higman Sims Graph Parts.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Higman_Sims_Graph_Parts.svg  Licença: Creative Commons Attribution 3.0 Contribuidores:Claudio Rocchini

Image:Higman-Sims-19.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Higman-Sims-19.svg  Licença: Public Domain Contribuidores: Gro-Tsen

File:Hoffman-Singleton graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Hoffman-Singleton_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Uzyel

Image:Hoffman singleton graph circle2.gif   Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Hoffman_singleton_graph_circle2.gif  Licença: Creative CommonsAttribution-ShareAlike 3.0 Unported Contribuidores: Claudio Rocchini

File:Holt graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Holt_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Holt graph 3COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Holt_graph_3COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Holt graph 5color edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Holt_graph_5color_edge.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Holt graph hamiltonian.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Holt_graph_hamiltonian.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Ljubljana graph hamiltonian.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Ljubljana_graph_hamiltonian.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Imagem:Ljubljana_graph_2COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Ljubljana_graph_2COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0

 Contribuidores: Koko90

Imagem:Ljubljana_graph_3color_edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Ljubljana_graph_3color_edge.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Page 156: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 156/157

Fontes, Licenças e Editores da Imagem 152

Imagem:Ljubljana graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Ljubljana_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Imagem:Ljubljana configuration.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Ljubljana_configuration.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Nauru graph.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Nauru_graph.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores:Koko90

Ficheiro:Symmetric group 4; Cayley graph 1,5,21 (Nauru torus).svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Symmetric_group_4;_Cayley_graph_1,5,21_(Nauru_torus).svg  Licença: Public Domain Contribuidores: Mate2code

Ficheiro:Symmetric group 4; Cayley graph 1,5,21 (Nauru Petersen).svg  Fonte:

http://pt.wikipedia.org/w/index.php?title=Ficheiro:Symmetric_group_4;_Cayley_graph_1,5,21_(Nauru_Petersen).svg  Licença: Public Domain Contribuidores: LipediaFicheiro:Symmetric group 4; Cayley graph 1,5,21 (adjacency matrix).svg  Fonte:http://pt.wikipedia.org/w/index.php?title=Ficheiro:Symmetric_group_4;_Cayley_graph_1,5,21_(adjacency_matrix).svg  Licença: Public Domain Contribuidores: Lipedia

Ficheiro:Nauru graph 3d.png  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Nauru_graph_3d.png  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: DavidEppstein

File:Nauru unit distance.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Nauru_unit_distance.svg  Licença: Public Domain Contribuidores: David Eppstein

Image:Pappus graph LS.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Pappus_graph_LS.svg  Licença: Public Domain Contribuidores: David Eppstein

Imagem:Pappus graph colored.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Pappus_graph_colored.svg  Licença: Creative Commons Attribution-Share Alike Contribuidores:R. A. Nonenmacher

Imagem:Pappus graph 3color edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Pappus_graph_3color_edge.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Imagem:Pappus graph 2COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Pappus_graph_2COL.svg  Licença: Creative Commons Attribution-Sharealike 3.0,2.5,2.0,1.0 Contribuidores: Koko90

Image:Petersen graph, two crossings.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Petersen_graph,_two_crossings.svg  Licença: Public Domain Contribuidores:User:Dbenbenn

Imagem:Petersen graph, unit distance.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Petersen_graph,_unit_distance.svg  Licença: Public Domain Contribuidores:User:Dbenbenn

Ficheiro:Shrikhande torus.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Shrikhande_torus.svg  Licença: Public Domain Contribuidores: David Eppstein

Ficheiro:Shrikhande graph 4COL.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Shrikhande_graph_4COL.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Shrikhande graph 6color edge.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Shrikhande_graph_6color_edge.svg  Licença: Creative Commons Attribution-Sharealike3.0,2.5,2.0,1.0 Contribuidores: Koko90

Ficheiro:Shrikhande graph symmetrical.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Shrikhande_graph_symmetrical.svg  Licença: Creative Commons Attribution-ShareAlike Contribuidores: R. A. Nonenmacher

Ficheiro:Shrikhande Lombardi.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Shrikhande_Lombardi.svg  Licença: Public Domain Contribuidores: David Eppstein

File:Chang graphs.svg  Fonte: http://pt.wikipedia.org/w/index.php?title=Ficheiro:Chang_graphs.svg  Licença: Creative Commons Attribution-Sharealike 3.0 Contribuidores: Claudio Rocchini

Page 157: Teoria Dos Grafos

7/16/2019 Teoria Dos Grafos

http://slidepdf.com/reader/full/teoria-dos-grafos-5633890285edf 157/157

Licença 153

LicençaCreative Commons Attribution-Share Alike 3.0 Unported

 //creativecommons.org/licenses/by-sa/3.0/