Buscar

Teroria de grafos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 142 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 142 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 142 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Teoria dos Grafos
Material Teórico
Responsável pelo Conteúdo:
Prof. Dr. Cleber Silva Ferreira da Luz
Revisão Textual:
Prof.ª Me. Sandra Regina Fonseca Moreira
Conceitos Básicos e Aplicações de Grafos
• Introdução;
• História da Teoria dos Grafos;
• Aplicações da Teoria dos Grafos;
• Conclusões e Resumo da Unidade.
• Apresentar as defi nições básicas e aplicações de grafos.
OBJETIVO DE APRENDIZADO
Conceitos Básicos e 
Aplicações de Grafos
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem 
aproveitado e haja maior aplicabilidade na sua 
formação acadêmica e atuação profissional, siga 
algumas recomendações básicas:
Assim:
Organize seus estudos de maneira que passem a fazer parte 
da sua rotina. Por exemplo, você poderá determinar um dia e 
horário fixos como seu “momento do estudo”;
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
alimentação saudável pode proporcionar melhor aproveitamento do estudo;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos 
e sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão sua 
interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o 
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e de 
aprendizagem.
Organize seus estudos de maneira que passem a fazer parte 
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Determine um 
horário fixo 
para estudar.
Aproveite as 
indicações 
de Material 
Complementar.
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
Não se esqueça 
de se alimentar 
e de se manter 
hidratado.
Aproveite as 
Conserve seu 
material e local de 
estudos sempre 
organizados.
Procure manter 
contato com seus 
colegas e tutores 
para trocar ideias! 
Isso amplia a 
aprendizagem.
Seja original! 
Nunca plagie 
trabalhos.
Unidade Conceitos Básicos e Aplicações de Grafos
Introdução
Grafo é uma estrutura abstrata muito utilizada na resolução de diversos tipos 
problemas da matemática e da computação. O principal objetivo da teoria dos gra-
fos é estudar a relação entre objetos de um determinado conjunto (GOLDBARG; 
GOLDBARG, 2012). Um grafo G é representado por G(V, A), onde V é conjunto 
não vazio de objetos, denominados Vértices ou Nós, e A é um conjunto de pares 
não ordenados de V, chamados de Arestas, (CORMEN; LEISERSON; CHARLES; 
RIVEST; STEIN, 2002), Por exemplo. Considere um grafo G(4,6). Este grafo é for-
mado por 4 vértices e 6 arestas.
V = {v1, v2, v3, v4}
A = {a1, a2, a3, a4, a5, a6} onde, a1 =(v1, v2), a2 =(v2, v3), a3 =(v3, v4), a4 = (v1, v4), 
a5 =(v2, v4), a6 = (v4, v3)
Um grafo também pode ser representado graficamente. Nesta representação, 
os vértices são representados por círculos ou pontos. Os vértices são conectados 
por arestas, estas são representadas por linhas (FEOFILOFF; KOHAYAKAWA; 
WAKABAYASHI, 2004).
As Figuras 1 e 2 apresentam exemplos de grafos. A Figura 1 mostra a repre-
sentação gráfica do grafo G(4,6). Já a Figura 2 ilustra um grafo G(3,3), ou seja, um 
grafo com 3 vértices e 3 arestas.
a1
a4
a5
a3
a6
a2
V5
V2
V1
V4
Figura 1 – Exemplo de grafo 1
Fonte: Acervo do conteudista
8
9
a1 a3
a2
V3V2
V1
Figura 2 – Exemplo de grafo 2
Fonte: Acervo do conteudista
História da Teoria dos Grafos
A Teoria dos Grafos teve início em 1736 na cidade de Konigsberg, quando o ma-
temático suíço Leonhard Euler publicou um artigo sobre o problema das pontes de 
Konigsberg. Neste artigo, Euler solucionou o problema das setes pontes de Konigsberg 
através da criação de grafos. O problema das setes pontes de Konigsberg é formulado 
da seguinte maneira: a cidade de Konigsberg era cortada pelo rio Pregel, neste rio, 
havia duas ilhas e sete pontes, conforme ilustrado na Figura 3. O matemático Euler se 
questionou se era possível encontrar um caminho que passasse por cada ponte uma 
única vez só, e retornar ao ponto inicial [HOLANDA, 2011].
A
C
B
D
Figura 3 – Pontes de Konigsber
Fonte: Extraída de (HOLANDA, 2011)
Para resolver este problema, Euler criou um diagrama que representava a cidade 
de Konigsber. O diagrama foi proposto da seguinte forma: a cada ilha e margem, 
ele associou um ponto (vértice), e a cada ponte, uma ligação (aresta) (HOLANDA, 
201). O diagrama proposto por Euler é ilustrado na Figura 4.
9
Unidade Conceitos Básicos e Aplicações de Grafos
Figura 4 – Diagrama proposto por Euler
Fonte: Adaptado de HOLANDA, 2011
Analisando o diagrama proposto, Euler percebeu que para passar por todas as 
pontes uma única vez e voltar ao ponto inicial, seria necessário que os vértices ti-
vessem um número par de arestas. Dessa forma, era impossível realizar este trajeto, 
pois havia vértices com exatamente três arestas incidentes (HOLANDA, 2011). 
Aplicações da Teoria dos Grafos
Diversos problemas da computação e matemática são resolvidos utilizando gra-
fos. As próximas subseções apresentam alguns destes problemas.
Placas de Circuitos Eletrônicos
Para a indústria eletrônica, é fundamental criar placas de circuitos eletrônicos de 
boa qualidade. Uma placa de circuito eletrônico permite que correntes percorram 
por componentes eletrônicos. Este percurso é determinado por um complexo sis-
tema eletrônico que pode ser simplificado e representado por um grafo. O objetivo 
do sistema eletrônico é examinar o caminho da corrente elétrica entre alguns com-
ponentes da placa (GOLDBARG, M.; GOLDBARG, E, 2012).
Um sistema eletrônico pode ser facilmente representado por um grafo. Os compo-
nentes eletrônicos podem ser representados por vértices, e as suas conexões elétricas 
podem ser representadas por arestas que contêm setas para representar o sentido do 
caminho da corrente no circuito (GOLDBARG, M.; GOLDBARG, E, 2012).
10
11
 
Figura 5 – Modelagem de placa circuito eletrônico com grafos
Fonte: Acervo do conteudista
Mapa Rodoviário
Grafos também podem ser utilizados para representar mapas rodoviários. 
As cidades podem ser representadas por vértices, e as rodoviárias podem ser repre-
sentadas pelas arestas (GOLDBARG, M.; GOLDBARG, E, 2012).
Vamos utilizar uma “situação exemplo” para facilitar a compreensão: considere 
o estado de São Paulo, que por sinal, possui diversas cidades. Neste estado, é pos-
sível ir de uma cidade para outra através das rodovias. Agora, imagine a seguinte 
situação: você mora na cidade de Campinas e pretende curtir uma praia no litoral 
de São Paulo. Há diversos caminhos que você pode utilizar. Você pode pegar a ro-
dovia BR-50 que passa pelas cidades de Vinhedo e Jundiaí e depois pegar a rodovia 
BR-116 que passa pelas cidades de Cotia e São Paulo e chegar ao seu destino final.
Dada essa situação, as cidades do Estado de São Paulo podem ser representadas 
por vértices, e as rodovias, por arestas.
 
Figura 6 – Mapa Rodoviário representado através de grafos
Fonte: Getty Images e Acervo do conteudista
11
Unidade Conceitos Básicos e Aplicações de Grafos
Grafo de Visibilidade
Grafos podem ser utilizados no tratamento da representação de visibilidade 
(GOLDBARG, M.; GOLDBARG, E, 2012). Por exemplo, considere um robô que 
anda (se movimenta) para frente. Para que o robô se movimente sem nenhum 
problema, é necessário implementar um eficiente mecanismo de visibilidade. Dessa 
forma, o robô consegue visualizar o que pode ser um obstáculo em seu percurso, 
ou seja, identifica objetos que podem impedir a sua movimentação.
A visibilidade do robô pode ser representada facilmente por um grafo. Considere 
um grafo G(N, M) no qual os vértices representam posições de observações e as 
arestas(i, j) marcam se o vértice i enxerga o vértice j. Por exemplo, vamos supor 
que o robô encontra-se parado no ponto A (vértice A) e deseja se movimentar até 
o ponto B. Se o vértice A consegue enxergar o vértice B, o robô consegue realizar 
o seu percurso sem nenhum problema.
A Figura 7 mostra um cenário em que os pontos de observações são representa-
dos por pequenos círculos. Uma aresta desenhada por uma linha contínua que liga 
dois pontos implica que um ponto (vértice) enxerga o outro ponto. Já uma aresta 
com linha pontilhada ligando dois pontos implica que não exista visibilidade entre 
esses pontos.
B
D
C
F G
A
E
Figura 7 – Cenário de observação 
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
A Figura 8 apresenta uma situação em que o robô pode encontrar um obstáculo. 
O ponto B não enxerga o ponto C. Dessa forma, diretamente, o percurso de B até 
C não pode ser realizado.
12
13
B
A
D
C
Figura 8 – Ponto de obstáculos
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
A Figura 9 mostra a visibilidade do vértice A em relação aos outros vértices. Por 
exemplo, considere que o robô se encontra no vértice A. Dessa forma, é possível 
perceber quais pontos o robô consegue enxergar. Vale ressaltar que as arestas 
pontilhadas mostram que o robô não consegue enxergar aquele ponto, enquanto 
as arestas contínuas mostram que o robô consegue enxergar aquele ponto. Dessa 
forma, o robô conseguiria se mover diretamente para os pontos B, D, E e F, ao 
contrário dos pontos C e G.
B
D
C
F G
A
E
Figura 9 – Visibilidade do ponto A
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
A Figura 10 mostra como seria o grafo de visibilidade deste cenário. Em suma, 
um grafo de visibilidade mostra todos os vértices que se enxergam.
13
Unidade Conceitos Básicos e Aplicações de Grafos
B
D
C
F G
A
E
Figura 10 – Grafo de visibilidade
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
Grafo de Discos
Grafos também podem ser aplicados para os discos. Imagine n pontos distri-
buídos em um plano e uma unidade de distância r. É possível obter um grafo G 
considerando-se que os n pontos formam o conjunto N e que existe a aresta (i, j) 
se o ponto j está localizado dentro de um círculo de raio r traçado a partir de i, 
conforme ilustrado na Figura 12(1). A Figura 11(1) mostra o processo de criação do 
grafo, já a Figura 11(2) mostra os pontos distribuídos à distância r. A Figura 11(3) 
mostra o grafo de disco da Figura 11(2) e, por fim, a Figura 11(4) apresenta o grafo 
não direcionado obtido. Na aplicação de disco, é possível trabalhar com grafos di-
recionados ou grafos não direcionados (GOLDBARG, M.; GOLDBARG, E, 2012).
(2) Pontos distribuídos à distância r(1) Aresta
r
Figura 11 A – Construção de grafo de disco
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
14
15
(3) Grafo de disco da Figura (2) (4) Grafo não direcionado
Figura 11 B – Construção de grafo de disco
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
Grafo de Xadrez
Grafos podem ser aplicados até mesmo em jogos de xadrez. Um grafo de xa-
drez é um grafo que representa os movimentos válidos de determinada peça do 
jogo de xadrez. A Figura 12 (1) apresenta o grafo de movimentos válidos para o rei 
e o peão. Neste grafo, os movimentos das peças são representados pelas arestas, 
e as posições das peças nas casas do tabuleiro são representadas pelos vértices. 
No xadrez, o peão e o rei atacam apenas casas vizinhas em linhas e colunas. Des-
sa forma, o grafo que representa seus movimentos é também chamado de grafo 
grade. A Figura 12 (2) representa parte do grafo de movimento de uma torre. 
A torre pode percorrer linhas e colunas do tabuleiro. Uma torre pode se deslocar 
para qualquer casa na mesma linha ou coluna[4]. A Figura 12(2) exibe as possibili-
dades de arestas de uma linha do tabuleiro para a movimentação da torre.
(1) Grafo xadrez rei e pião (2) complemento para o grafo xadrez torre
Figura 12 – Grafo de xadrez
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
15
Unidade Conceitos Básicos e Aplicações de Grafos
Grafo de Estado
Um grafo também é útil para representar o espaço de estados de um sistema e 
mostrar como esses estados se relacionam. Habitualmente, o conjunto de vértices do 
grafo de estado está associado às configurações do sistema, que também são deno-
minadas de Estados. O estado de um sistema pode ser compreendido também como 
uma dada atribuição de valores para as suas variáveis livres. No grafo de estado, 
o conjunto de arestas indica as alternativas possíveis para executar uma transfor-
mação nas configurações do sistema. Tais configurações são representadas pelos 
vértices. Para exemplificar, imagine um grafo de estado em que uma aresta repre-
senta a possibilidade de movimentar uma peça no tabuleiro (ver o tópico anterior). 
Os tabuleiros, antes e depois da peça ser movimentada, representam possíveis esta-
dos do grafo ou seus vértices.
Uma transformação na configuração do sistema não obrigatoriamente determi-
na a alteração do estado do sistema. Grafo de estado também é útil para modelar 
um processo de decisão. Nesse caso, cada vértice do grafo representa o resultado 
de certa decisão, enquanto as arestas modelam a forma de transformação sofrida 
pela decisão anterior para transformá-la na decisão corrente (GOLDBARG, M.; 
GOLDBARG, E, 2012).
A Figura 13 ilustra um Grafo de estado e seus elementos.
1
4
2
3 5
- Transição
- Mudança de decisão
- Mudança de con
guração
- Decisão
- Con
guração
Estado 1
Estado 2
Figura 13 – Grafo de estado
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
16
17
Grafo de Estado para Solução de um Problema Lógico
Problema: O barqueiro João recebeu a missão de atravessar uma ovelha, um 
lobo e um pacote de alface de uma margem para outra do rio São Francisco 
(GOLDBARG, M.; GOLDBARG, E, 2012). Para realizar essa travessia, João irá 
utilizar a sua canoa que possui a capacidade de transportar somente duas 
pessoas. João só será pago após realizar a travessia da ovelha, do lobo e do 
pacote de alface, e se todos chegarem com segurança na outra margem. Todavia, 
caso o lobo permaneça em alguma margem sozinho com a ovelha, fatalmente ele 
irá devorá-la. Agora, se a ovelha permanecer sozinha com o pacote de alface, ela, 
com certeza, irá comê-lo. Infelizmente, nessa missão, não há ninguém que possa 
ajudar João. Como realizar a travessia de modo que a carga seja transportada 
com segurança?
Modelagem
Considere (J) como o rótulo para representar o João, (L) como rótulo para re-
presentar o lobo, (A) como rótulo para representar a alface e (O) para representar 
a ovelha.
A Figura 14 ilustra uma interpretação para este problema.
JLOA
LA
JO
JL
J
JL
J
JO
JO
LA
LA
LA
A
A
A L
L
O
O
A
Figura 14 – Modelagem do problema
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
Inicialmente todos estão na margam à esquerda. Após a travessia, todos deverão 
estar na margem à direita. Nesta modelagem, em nenhuma margem o lobo e a 
ovelha ficam sozinhos, ou a ovelha fica sozinha com o pacote de alface. Analisando 
essa modelagem, surge a pergunta: o grafo é relevante para modelar este problema? 
17
Unidade Conceitos Básicos e Aplicações de Grafos
A resposta é afirmativa. Vamos lá, considere um grafo de movimento, onde os vérti-
ces representam a população da margem inicial, e as arestas representam as viagens 
na canoa, conforme a Figura 16 exemplifica.
Margem inicial antes
do movimento
Margem inicial após
o movimento
Transporte na canoa
JLOA OA
JL
Figura 15 – Modelo do grafo
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
Depois de realizar esta formulação, é possível organizar um grafo de estado con-
forme mostrado na Figura 16.
JLOA
JA
LO
LA
OA
J
L
A
JLA
JLA
JLA
JOL
JOA
JA
JA
JO
JO JA
JLJL
JL
JL
O
O
JO
Retorno sem sentido
repete a viagem
Retorno sem sentido
repete a viagem
Figura 16 – Grafo de estado parcial do problema do barqueiro – margem inicial
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG,E, 2012
Quando a margem inicial ficar vazia, o problema será solucionado, ou seja, 
quando um vértice vazio for alcançado no grafo. O grafo não precisa explorar 
movimentos de violação das regras de segurança ou repetir operações. O grafo da 
Figura 16 pode ser reduzido ao grafo da Figura 17.
18
19
JLOA LA JLA
JA
JO
JOL
JL
JL
JO JOA JA
J
JOL JO
JO
O
L
A
O JA
JL
JLA A
JO
JOVolta
Volta
Volta
Volta
J
L
JJO
JL
Figura 17 – Grafo de movimento do problema do barqueiro – margem inicial
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
Grafo de Estado para a Solução do 8-Puzzle
O 8-puzzle é um jogo de quebra-cabeça bastante conhecido entre as pessoas. 
O jogo é composto por um tabuleiro com determinadas peças. Em cada peça há 
um número diferente escrito. O objetivo do jogo é alcançar uma determinada con-
figuração para os números do tabuleiro. Para isso, é possível movimentar os nú-
meros do tabuleiro deslizando as peças horizontalmente e verticalmente para uma 
posição vazia no tabuleiro (GOLDBARG, M.; GOLDBARG, E, 2012).
A Figura 18(1) apresenta um tabuleiro do 8-puzzle. A Figura 18(2) apresenta um 
exemplo de configuração desejada.
(1) Quadro Inicial (2) Quadro �nal desejado
1 2 3
6 4 5
8 7
1 2 3
8
6
4
7 5
Figura 18 – Confi guração do 8-Puzzle
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
19
Unidade Conceitos Básicos e Aplicações de Grafos
Para este jogo, o grafo de modelagem considera uma configuração do tabuleiro em 
cada vértice. Dessa forma, um vértice será uma configuração do tabuleiro. Já as arestas 
modelam os movimentos de deslizamento das peças. A Figura 19 exemplifica um grafo 
de modelagem com nove vértices. O início do jogo é representado pelo vértice 1.
1
1 2 3
6 4 5
8 7
1
5 6 7 8 9
4 3
1 2 3
6
4
5
8 7
1 2 3
6 4 5
78
1 2 3
6
4 5
8 7
1 2 3
6
4
5
8 7
1
2
3
6
4
5
8 7
1 2 3
6
4
5
8 7
1 2 3
6 4
58 7
1 2 3
6 4 5
8 7
Figura 19 – Grafo para modelar os movimentos do 8-Puzzle
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
Grafos para Modelar Jogos
Grafos também aparecem na modelagem de jogos. Habitualmente, um jogo é 
composto por personagens (agentes) que disputam recursos ou competem para 
alcançar um objetivo. Frequentemente, esses agentes tomam decisões. Grafos po-
dem ser úteis para representar as decisões que os agentes podem tomar, ou, até 
mesmo, mostrar os estados dos jogos.
Grafos são utilizados para modelar diversos jogos, entre eles, encontra-se o jogo 
da velha. No jogo da velha, grafos mapeiam todas as possíveis jogadas dos competi-
dores, onde os vértices representam as possíveis jogadas, e as arestas representam 
as ligações entre as jogadas.
Manejo Ecológico de Reservas Vegetais
A perversão da fauna e também da flora é muito importante para o equilíbrio 
do ecossistema. Habitualmente, os biólogos criam diversos modelos matemáticos 
20
21
para ajudar nas perversões ecológicas de reservas vegetais. Em contrapartida, para 
a sobrevivência do ser humano, em determinadas situações se faz necessária a utili-
zação de determinadas reservas vegetais. O maior desafio encontrado até hoje pelo 
ser humano é conciliar a preservação com a demanda de utilização das reservas 
(GOLDBARG, M.; GOLDBARG, E, 2012).
Na questão de preservação, grafos podem ser úteis para modelagem do ma-
nejo ecológico de reservas vegetais. Imagine que determinada área vegetal seja 
economicamente explorada para a extração de madeira de lei; considere também 
que as árvores sejam cortadas perto do fim do seu ciclo de vida natural. Leve em 
conta que as árvores removidas são substituídas por mudas de outra árvore que 
deve ser plantada no mesmo local da removida. Agora, observe a Figura 20. Esta 
figura exemplifica a planta de um lote de distribuição de espécies vegetais. Este 
lote é explorado economicamente. Nesta figura, os traços representam caminhos 
preexistentes (percurso para andar pela reservar), o quadrado vermelho é um pos-
to do IBAMA. 
Figura 20 – Distribuição das árvores no lote de exploração
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
Considere que duas remoções nunca podem ocorrer a menos de 500 metros 
de outra remoção, ou seja, deve haver um espaço mínimo de 500 metros entre 
uma remoção e a outra. A área para a remoção das árvores não pode ultrapassar 
2000 metros.
 A Figura 21 apresenta o modelo em grafo das restrições desse problema. Neste 
problema, caso duas á rvores estejam localizadas dentro do raio de 500 metros de 
afastamento mínimo, são ligadas por uma aresta.
21
Unidade Conceitos Básicos e Aplicações de Grafos
Figura 21 – Grafo de proximidade
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
A Figura 22 mostra uma solução viável para a exploração desse lote.
Figura 22 – Árvores escolhidas
Fonte: Adaptado de GOLDBARG, M.; GOLDBARG, E, 2012
Conclusões e Resumo da Unidade
Criados em 1736 pelo matemático suíço Euler, grafos podem ser compreendidos 
como estruturas abstratas cujo objetivo é demonstrar o relacionamento entre obje-
tos. Um grafo é composto por vértices (objetos) e arestas (ligação entre os objetos). 
Matematicamente, um grafo G é representado por G(V, A), onde V é conjunto não 
vazio de objetos denominados Vértices ou Nós, e A é um conjunto de pares não 
22
23
ordenados de V, chamados de arestas. Grafos também podem ser representados 
graficamente, onde os vértices são representados por círculos ou pontos, e as ares-
tas, por linhas contínuas.
Grafos são utilizados em diversas aplicações, dentre elas, estão: a fabricação de 
placas de circuitos eletrônicos, mapas rodoviários, mapas de visibilidade, mapas de 
disco, mapas de Xadrez, jogos, e também no manejo ecológico de reservas vege-
tais. Grafos aparecem até mesmo em redes sociais. Um grande exemplo disso é o 
Facebook. A ideia do Facebook é conectar pessoas. Dessa forma, as pessoas são 
encaradas como vértices e as ligações entre elas, são as arestas.
Como visto nesta unidade, grafos são de suma importância para a resolução de 
diversos problemas. Habitualmente, grafos são bem empregados em situações nas 
quais se deseja estudar o relacionamento entre objetos.
23
Unidade Conceitos Básicos e Aplicações de Grafos
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
 Livros
Teoria computacional de grafos, os algoritmos
SZWARCFITER, Jayme L. Teoria computacional de grafos, os algoritmos. São 
Paulo. Editora: Elsevier, 2018.
 Vídeos
Introdução à Teoria dos Grafos - Aula 1 - O que é um grafo?
Este vídeo conta a história da teoria dos grafos e exemplifica um grafo.
https://youtu.be/Frmwdter-vQ
Introdução à Teoria dos Grafos – Aula 2 – Alguns problemas simples
Este vídeo exemplifica alguns problemas solucionados com grafos.
https://youtu.be/fLNQfhpv-js
Teoria dos Grafos Aula 1
Este vídeo fala sobre a história da teoria dos grafos e sobre os conceitos básicos de 
grafos.
https://youtu.be/YCUKumiv_Ck
24
25
Referências
BOAVENTURA NETTO, Paulo Oswaldo. Grafos: teoria, modelos, algoritmos. 
2. ed. São Paulo: Edgard Blucher, 2001.
CORMEN, T. H.; LEISERSON, Charles E.; RIVEST, R.; STEIN, C. Algoritmos 
teoria e prática. 2. ed., Campus, 2002.
FEOFILOFF, P.; KOHAYAKAWA, Y.; WAKABAYASHI, Y. – Uma Introdução 
Sucinta à Teoria dos Grafos, 2011, Disponível em: <https://bit.ly/2XrHdjR>. 
Acessado em: 24/11/2018.
FURTADO, A. L. – Teoria dos grafos algoritmos, Livros Técnicos e científicos. 
Rio de Janeiro: Editora S.A, 1973.
GOLDBARG, M.; GOLDBARG, E. Grafos conceitos, algoritmos e aplicações. 
São Paulo: Campus, 2012.
HOLANDA, Bruno – Teoria dos Grafos. – Relatório técnico. Disponível 
em: <https://bit.ly/2wzN7n9> Acessado em: 28/11/2018.
NETTO, P. O.; JURKIEWICZ, S. Grafos: Introdução e Prática. 2. ed. São Paulo: 
Blucher, 2017.
NICOLETTI, Maria do Carmo; HRUSCHKA JÚNIOR, Estevam Rafael. Fundamen-
tos da teoria dos grafos para computação. São Carlos, SP: EdUFSCar, 2006.
SIMÕES, J. M. S. Grafos e Redes: Teoria e Algoritmos Básicos. Rio de Janeiro: 
Interciência, 2013.
SZWARCFITER,J. L. Teoria computacional de grafos. 1. ed. São Paulo: 
Elsevier. (8 de março de 2018).
25
Teoria dos Grafos
Material Teórico
Responsável pelo Conteúdo:
Prof. Dr. Cleber Silva Ferreira da Luz 
Revisão Textual:
Prof.ª Me. Sandra Regina Fonseca Moreira
Conceitos e Propriedades de Grafos
• Introdução;
• Conceitos Básicos;
• Propriedades Fundamentais de Grafos.
• Apresentar os principais conceitos e propriedades da teoria dos grafos.
OBJETIVO DE APRENDIZADO
Conceitos e Propriedades de Grafos
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem 
aproveitado e haja maior aplicabilidade na sua 
formação acadêmica e atuação profissional, siga 
algumas recomendações básicas:
Assim:
Organize seus estudos de maneira que passem a fazer parte 
da sua rotina. Por exemplo, você poderá determinar um dia e 
horário fixos como seu “momento do estudo”;
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
alimentação saudável pode proporcionar melhor aproveitamento do estudo;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos 
e sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão sua 
interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o 
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e de 
aprendizagem.
Organize seus estudos de maneira que passem a fazer parte 
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Determine um 
horário fixo 
para estudar.
Aproveite as 
indicações 
de Material 
Complementar.
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
Não se esqueça 
de se alimentar 
e de se manter 
hidratado.
Aproveite as 
Conserve seu 
material e local de 
estudos sempre 
organizados.
Procure manter 
contato com seus 
colegas e tutores 
para trocar ideias! 
Isso amplia a 
aprendizagem.
Seja original! 
Nunca plagie 
trabalhos.
UNIDADE Conceitos e Propriedades de Grafos
Introdução 
Proposto em 1736 pelo matemático suíço Leonhard Euler, grafos são essenciais 
para solucionar problemas de matemática. Como já visto anteriormente, um grafo 
é uma estrutura abstrata, cujo objetivo principal é estudar o relacionamento entre 
objetos (BOAVENTURA; Paulo, 2017). Um Grafo é composto por vértices (obje-
tos) e arestas (ligações entre os objetos). Matematicamente, um grafo G é dado por 
G(V,A), onde V é um conjunto não vazio de objetos, e A é um conjunto de arestas 
(CORMEN; LEISERSON; CHARLES; RIVEST; STEIN, 2002). A Figura 1 apresenta 
um grafo G(6,8).
Figura 1 – Exemplo de grafo
Fonte: Acervo do conteudista
A teoria dos grafos esta repleta de nomenclaturas, termos técnicos, propriedades 
e definições que são empregadas nos grafos. O objetivo desta unidade é apresentar 
os principais conceitos e propriedades presentes na teoria dos grafos, conforme 
veremos nas seções seguintes.
Conceitos Básicos
Vamos estudar um pouco sobre os conceitos básicos na teoria dos grafos. 
Um grafo é composto por vértices e arestas, certo? Os vértices são os objetos e 
as arestas são as ligações entre os objetos. Todavia, um grafo pode conter arestas 
paralelas. Observe as arestas a5 e a6 do grafo apresentado na Figura 2. Essas ares-
tas representam ligações diferentes entre vértices idênticos, com isso, são denomi-
nadas arestas paralelas (NICOLETTI; MARIA; HRUSCHKA; ESTEVAM, 2006). 
Agora, uma aresta pode ligar um vértice a ele mesmo. Observe a aresta a3 do 
grafo apresentado na Figura 2. Esta aresta liga o vértice V3 a ele mesmo, formando 
um laço. Aresta com essa característica é denominada de laço (FEOFILOFF, P.; 
KOHAYAKAWA, Y.; WAKABAYASHI, 2011). 
8
9
V2
V1 V4
V3
a5
a6
a4
a3
a2
a1
a7
Figura 2 – Arrestas paralelas e laços
Um grafo que não contém arestas paralelas e não contém arestas em forma de 
laços é denominado de grafo simples (BOAVENTURA; PAULO, 2017). 
Já um grafo que contém no mínimo um laço é chamado de pseudografo 
(GOLDBAR, M.; GOLDBARG, E, 2012). A Figura 3 ilustra um pseudografo.
a1
V1
V2 V3
Figura 3 – Pseudografo
Um pseudografo onde todos os vértices possuem um laço associado é deno-
minado como grafo reflexivo (SIMÕES; 2013). A Figura 4 ilustra um exemplo de 
grafo reflexivo.
a1
a3
a2
V1
V2 V3
Figura 4 – Grafo refl exivo
9
UNIDADE Conceitos e Propriedades de Grafos
Um grafo não direcional, que contém no mínimo duas arestas paralelas, é chama-
do de multigrafo (SZWARCFITER;2018). A Figura 5 ilustra um exemplo de multigrafo.
a1
a8
a7
a5
a6
a4
a3
a2
V1 V6
V5
V4
V3
V2
Figura 5 – Multigrafo
Um grafo direcionado, que possui no mínimo dois ou mais arcos de mesma 
direção ligando um mesmo par de vértices, é denominado multigrafo direcionado 
(FURTADO, 1973).
Já um grafo vazio é aquele que contém somente vértices (GOLDBAR, M.; 
GOLDBARG, E, 2012). A Figura 6 ilustra um exemplo de grafo vazio.
V1
V5
V4
V3V2
Figura 6 – Grafo vazio
Um grafo é denominado como trivial quando possui apenas um vértice. A Figura 7 
ilustra um exemplo de grafo trivial (GOLDBAR, M.; GOLDBARG, E, 2012). 
V1
Figura 7 – Grafo trivial
Um grafo é denominado como nulo quando não existem vértices (GOLDBAR, 
M.; GOLDBARG, E, 2012).
10
11
Já um grafo que contém apenas um vértice e n arestas é denominado de grafo 
Buquê (GOLDBAR, M.; GOLDBARG, E, 2012). A Figura 8 ilustra um grafo buquê.
V1
a3
a4
a5a1
a2
Figura 8 – Grafo Buquê
Um grafo pode ser generalizado para o caso em que a relação entre os vértices 
permite a consideração de mais de um par de nós ou vértices. “Quando um grafo 
possui uma ou mais arestas que correspondam a relações que envolvam mais de dois 
vértices, esse grafo é denominado hipergrafo” (GOLDBAR, M.; GOLDBARG, E, 
2012). A Figura 9 ilustra um hipergafo.
1 2
6
5
4
3
Figura 9 – Hipergrafo
Fonte: Adaptada de GOLDBAR, M.; GOLDBARG, E, 2012
Propriedades Fundamentais de Grafos
Grafos Rotulados
Um grafo pode possuir atribuições (informações) associadas tanto em suas ares-
tas como em seus vértices. Habitualmente, essas atribuições são descritas junto 
aos seus elementos. As anotações que permitem distinguir vértices e arestas são 
chamadas de rótulos (NETTO; JURKIEWICZ,2017). 
11
UNIDADE Conceitos e Propriedades de Grafos
Um grafo que possui atribuição em seus vértices ou arestas é denominado como 
grafo rotulado (NETTO; JURKIEWICZ,2017). Na Figura 10, o grafo 1 não é ro-
tulado, o grafo 2 possui rótulos nas arestas e o grafo 3 possui rótulos nos vértices. 
É importante ressaltar que os rótulos podem ser letras, números, palavras, ou até 
mesmo letras com números, ou palavras com números. Em palavras bem simples, 
rótulo é um nome dado aos vértices e arestas. 
1
2 3
a
a
e
e
d
dc c
b
b
Figura 10 – Exemplo de grafo rotulado 
Fonte: Adaptado de GOLDBAR, M.; GOLDBARG, E, 2012
Grafos Ponderados
Outro tipo de grafo muito comum é o grafo ponderado (BOAVENTURA; PAULO, 
2017). Um grafo é definido como ponderado se existem pesos associados as suas 
arestas ou vértices. A Figura 11 apresenta dois grafos, o grafo 1 e o grafo 2. O grafo 
1 possui pesos associados em suas arestas, já o grafo 2 possui pesos associados em 
seus vértices. 
1
1
98
15
3
3
4
5
7
7
7
12
65
2
2
2
Figura 11 – Exemplos de grafos ponderados
12
13
Um grafo pode possuir rótulos e pesos ao mesmo tempo. Observe a Figura 12. 
Esta figura apresenta dois grafos. O grafo 1 possui vértices rotulados e arestas com 
pesos. O grafo 2 possui seus vértices com rótulos e pesos ao mesmo tempo. 
Figura 12 – Exemplos de grafos ponderados
Grafos Orientados e Não Orientados
Como mencionadoanteriormente, o principal objetivo da teoria de grafos é es-
tudar a relação dos objetos, certo? Os objetos são representados pelos vértices, e as 
arestas representam a relação entre os objetos. Todavia, em determinadas circuns-
tâncias, pode ser importante analisar o sentido desta relação. Por exemplo, imagine 
um grafo no qual seus vértices representem pessoas, e uma aresta i-j existe se a 
pessoa i conhece a pessoa j; isto não implica que j conhece i. Neste caso, a aresta 
i-j é denominada arco, e é representada graficamente como uma flecha. A flecha 
determina o sentido da relação (BOAVENTURA; PAULO, 2017).
Quando em um grafo as direções das arestas são importantes, o grafo é definido 
como direcionado, orientado ou dígrafo (GOLDBAR, M.; GOLDBARG, E, 2012). A 
Figura 13 apresenta dois grafos. O grafo 1 é não direcionado, já o grafo 2 é direcionado. 
1 2
Figura 13 – Grafo não direcionado e grafo direcionado
Fonte: Adaptado de GOLDBAR, M.; GOLDBARG, E, 2012
13
UNIDADE Conceitos e Propriedades de Grafos
Um grafo também pode conter arestas e arcos ao mesmo tempo. Um grafo com 
esta característica é denominado de misto (GOLDBAR, M.; GOLDBARG, E, 2012). 
A Figura 14 ilustra um exemplo de grafo misto. 
Figura 14 – Grafo misto
Fonte: Adaptado de GOLDBAR, M.; GOLDBARG, E, 2012
Tamanho e Ordem de Grafos 
A quantidade de vértices de um grafo define a sua ordem – |N| (FEOFILOFF, P.; 
KOHAYAKAWA, Y.; WAKABAYASHI, 2011). Já o número de arestas que um grafo possui 
define o seu tamanho – |M| (FEOFILOFF, P.; KOHAYAKAWA, Y.; WAKABAYASHI, 
2011). O grafo 1 apresentado na Figura 15 é de ordem 6 e tamanho 9. Já o grafo 2 é de 
ordem 3 e tamanho 3. 
1 2
Figura 15 – Ordem e tamanho de grafos
14
15
Adjacência de Vértices
Outra propriedade muito importante na teoria dos grafos é a adjacência de 
vértices (SIMÕES; 2013). Um grafo é uma estrutura abstrata indicada para a re-
presentação topológica de formas de conexão. Há duas formas para entender vizi-
nhança entre vértices e arestas. A primeira é para o caso dos grafos direcionados 
e a outra para os não direcionados. 
Dois vértices i e j são vizinhos ou adjacentes quando existe uma aresta que 
liga i a j ou vice-versa. O conjunto de vértices vizinhos do vértice i é denominado 
Γ(i) ou N(i). 
Por exemplo, considere o grafo 1 apresentado na Figura 16. Queremos saber quais 
são os vértices adjacentes ao vértice 6. Para isso, basta olhar os vértices que estão co-
nectados ao vértice 6. O grafo 2 da Figura 16 mostra os vértices adjacentes ao vértice 6.
1 2
22
3
6 6
44 55
7 7
1 1
3
N(6)= {4,5,7}
Figura 16 – Adjacência de vértices
Sucessores e Antecessores
Quando o grafo é direcionado, em determinadas circunstâncias, pode ser im-
portante saber quais são os vértices sucessores e antecessores a um determina-
do vértice. Certo, mas como é possível descobrir os sucessores e antecessores a 
determinado vértice? Um vértice j é sucessor de i se existe pelo menos um arco 
ligando i a j. Os sucessores do vértice i são Γ+(i). No caso da ocorrência inver-
sa, diz-se que o vértice j é antecessor de i. Os antecessores do vértice i são Γ - (i) 
(GOLDBAR, M.; GOLDBARG, E, 2012). O grafo apresentado na Figura 17 ilustra 
exemplos de antecessores e sucessores. Neste grafo, o antecessor do vértice 6 é 
o vértice 1. Já os sucessores são os vértices 2 e 3.
15
UNIDADE Conceitos e Propriedades de Grafos
Figura 17 – Antecessor e sucessor de vértice
Adjacência de Arestas
Duas arestas ai e aj são adjacentes se estiverem conectadas ao mesmo vértice, 
ou seja, compartilham o mesmo vértice (SIMÕES; 2013). A Figura 18 apresenta um 
grafo que exemplifica o conceito de arestas adjacentes. Neste exemplo, são evidenciadas 
as arestas adjacentes ao vértice 3.
Figura 18 – Arestas adjacentes
Grau de Vértice 
Em determinadas circunstâncias, pode ser interessante, ou até mesmo necessário, cal-
cular o grau (ou valência) de um vértice de um determinado grafo (SZWARCFITER;2018). 
O grau de um vértice é calculado pelo número de arestas incidentes a ele. Dessa forma, o 
grau d(xi) de um vértice xi, em um grafo não direcionado é igual ao número das arestas 
incidentes no vértice. Caso o vértice contenha laços, é contado duas vezes. A Figura 19 
16
17
ilustra um exemplo para grafos não direcionados. Neste exemplo, é calculado o grau dos 
vértices 2 e 7. No vértice 7 há duas arestas incidindo a ele, dessa forma, o seu grau é 
d(x7) = 2. No vértice há apenas uma aresta incidindo a ele, com isso, o seu grau é d(x2) = 1.
Caso todos os vértices do grafo possuam grau finito, o grafo é denominado como 
localmente finito (GOLDBAR, M.; GOLDBARG, E, 2012). Quando o vértice possui 
grau zero, ele é denominado vértice isolado (GOLDBAR, M.; GOLDBARG, E, 2012).
d(x2)=1
d(x7)=2
1
8
4
2
7
6
5
3
Figura 19 – Exemplo de grau de vértice em grafo não direcionado
Fonte: Adaptado de GOLDBAR, M.; GOLDBARG, E, 2012
O grafo apresentado na Figura 19 exemplifica o calculo do grau para um grafo 
não direcionado. Todavia, e se o grafo for direcionado? Caso o grafo seja direciona-
do, o grau de um vértice xj é composto por um valor interno e um valor externo. 
O grau interno de um vértice xj de um grafo direcionado é igual ao número 
de arcos incidentes ao vértice (que apontam para o vértice). Já o grau externo de 
um vértice xj de um grafo direcionado é igual ao número de arcos emergentes 
ao vértice (que deixam o vértice considerado) (GOLDBAR, M.; GOLDBARG, E, 
2012) Habitualmente, os graus internos e externos de um grafo direcionado são 
representados por d-(xj) e d+(xj) respectivamente. 
O cálculo do grau interno e externo de um vértice xj em grafo direcionado é 
exemplificado na Figura 20. Neste exemplo, é calculado o grau interno e exter-
no dos vértices 2, 6 e 7. É possível observar que, o grau interno do vértice 2 é 
d-(x2) = 0, porque não há nenhuma aresta incidente a ele. Já o seu grau externo é 
d2(x2) = 1, pois há uma única aresta emergindo dele. O grau interno do vértice 6 
é dado por d-(x6) = -1 e o grau externo é dado por d+(x6) = +1. Para o vértice 5, 
o grau interno é d-(x5) = -2 e o grau externo é d+(x5) = +1.
17
UNIDADE Conceitos e Propriedades de Grafos
d-(x2)= 0
d+(x2)= +1
d-(x6)= -1
d+(x6)= +1
d-(x5)= -2
d+(x5)= +1
1
8
4
2
7
6
5
3
Figura 20 – Exemplo de grau de vértice em grafo não direcionado
Fonte: Adaptado de GOLDBAR, M.; GOLDBARG, E, 2012
Quando o grafo é direcionado, as parcelas do grau (grau externo e grau interno) 
do vértice que também podem ser denominadas como semigraus são denotadas 
com valores positivos e negativos. O valor final do grau do vértice é dado pela 
soma do valor absoluto do semigrau interior d-(xi) e exterior d
+(xi) (GOLDBAR, 
M.; GOLDBARG, E, 2012). Dessa forma, o valor final do grau do vértice é obtido 
pela expressão d(xi) = | d
+(xi) | + | d
-(xi)|.
Por exemplo, o cálculo do grau dos vértices 3 e 4 seria da seguinte maneira.
d(3) = | d+(3) | + | d-(3)| = | +3 | + | 0 | =3
d(4) = | d+(4) | + | d-(4)| = | 0 | + | -4 | = 4
Grafos Regulares
Um grafo é denotado como regular quando todos os seus vértices possuem o 
mesmo grau [4]. Um grafo regular com vértices de graus k é denominado de 
grafo regular-k. A Figura 21 apresenta o grafo 1 e o grafo 2. O grafo 1 é um grafo 
regular-2, porque todos os vértices desse grafo possuem 2 graus. Já o grafo 2 é 
um grafo regular-3, pois todos os vértices possuem 3 graus cada. 
Quando um grafo possui somente vértices, ele é denominado grafo regular-0.
18
19
Quando, em um grafo, cada par de vértices adjacentes tem o mesmo número i de 
vizinhos em comum, e cada par de vértices não adjacentes tem o mesmo número n 
de vizinhos em comum, o grafo é denotado como fortemente regular (GOLDBAR, 
M.; GOLDBARG, E, 2012). 
1 2
Figura 21 – Grafos regulares
Fonte: Adaptado de GOLDBAR, M.; GOLDBARG, E, 2012
Grafo Completo e Subgrafos
Um grafo completo é um grafo simples, onde todo vértice é adjacente a to-
dos os outros vértices (BOAVENTURA; PAULO, 2017) Habitualmente um grafocompleto de n vértices é denotado por Kn.
No começo do estudo da teoria de grafos, foi dito que grafos representam a 
relação entre objetos e que diversos problemas são modelados através de grafo. 
É possível afirmar que em certas situações seja necessário distinguir partes espe-
cíficas de um grafo para solucionar um problema, obtendo, assim, um subgrafo. 
Dado um grafo G = (N,M), um subgrafo Gs = (Ns,Ms) é obtido se Ns C N e Ms 
C M, e uma aresta (i,j) existir em Ms, somente se i,j existir em Ns. 
Um subgrafo pode ser classificado em subgrafo próprio ou parcial.
Um subgrafo próprio Gs = (Ns,Ms) é obtido de G = (N,M) se Ns C N e Ms C M, 
ou Ns C N e Ms C M, e uma aresta (i,j) existe em Ms, somente se i,j existir em Ns.
Já um subgrafo parcial Gs = (Ns,Ms) é obtido de G = (N,M) se Ns = N e Ms C M, 
e uma aresta (i,j) existe em Ms, somente se i,j existir em Ns.
Para ilustrar um subgrafo, considere o grafo apresentado na Figura 22. 
19
UNIDADE Conceitos e Propriedades de Grafos
Figura 22 – Grafo exemplo
Fonte: Adaptado de GOLDBAR, M.; GOLDBARG, E, 2012
A Figura 23 apresenta os subgrafos extraídos do grafo A. O grafo 1 é um sub-
grafo parcial de A, onde Ns = N e Ms = M. O grafo 2 é um subgrafo próprio de 
A, onde Ns C N e Ms C M. O grafo 3 é um subgrafo parcial próprio de A, onde 
Ns = N e Ms C M. Por fim, o grafo 4 é um subgrafo parcial de A, onde Ns = N e 
Ms C M (GOLDBAR, M.; GOLDBARG, E, 2012). 
1 2 3 4
Figura 23 – Exemplo de subgrafos
Fonte: Adaptado de GOLDBAR, M.; GOLDBARG, E, 2012
Grafos Bipartidos
Um grafo bipartido é um grafo cujos vértices podem ser divididos em dois 
conjuntos diferentes X e Y. A Figura 24 ilustra um grafo bipartido (GOLDBAR, M.; 
GOLDBARG, E, 2012).
20
21
Figura 24 – Exemplo de grafo bipartido
Importante!
A teoria dos grafos é um ramo da matemática que estuda o relacionamento entre os ob-
jetos. Um Grafo é composto por vértices (objetos) e arestas (ligações entre os objetos). 
Matematicamente, um grafo G é dado por G(V,A), onde V é um conjunto não vazio de 
objetos e A é um conjunto de arestas.
Grafos são essenciais para a resolução de diversos problemas matemáticos. A teoria dos 
grafos esta repleta de nomenclaturas, termos técnicos, propriedades e definições que 
são empregadas nos grafos.
Nesta unidade foram apresentados conceitos básicos sobre a teoria dos grafos, conforme 
resumimos a seguir: quando um par de vértices é ligado por mais de uma aresta, dize-
mos que as arestas são arestas paralelas. Um laço é uma aresta que liga o vértice a ele 
mesmo. Grafo simples é um grafo que não contém laço e nem arestas paralelas.
Quando um grafo contém no mínimo um laço, é chamado de pseudografo. Um pseu-
dografo onde todos os vértices possuem um laço associado é denominado como grafo 
reflexivo. Um grafo é denominado como nulo quando não existem vértices. Quando um 
grafo possui uma ou mais arestas que correspondam a relações que envolvam mais de 
dois vértices é denominado hipergrafo.
Também foram apresentadas propriedades fundamentais, como grafos rotulados. Um 
grafo rotulado é um grafo que contém rótulo (nome) nos vértices ou arestas. Um grafo 
ponderado é um grafo que contém pesos nas arestas ou nos vértices. Grafos orientados 
são grafos cujas arestas contêm direção. As arestas são chamadas de arcos. A quantidade 
de vértices de um grafo define a sua ordem - |N|. Já o número de arestas que um grafo 
possui define o seu tamanho - |M|. 
Um vértice x é adjacente a um vértice y se houver uma aresta que os ligue direto. Duas 
arestas ai e aj são adjacentes se estiverem conectadas ao mesmo vértice, ou seja, com-
partilhem o mesmo vértice. Grau de um vértice é o número das arestas incidentes no 
vértice. Um grafo é denotado como regular quando todos os seus vértices possuem o 
mesmo grau. Um grafo completo é um grafo simples, onde todo vértice é adjacente a 
todos os outros vértices. Um grafo bipartido é um grafo cujos vértices podem ser dividi-
dos em dois conjuntos diferentes X e Y.
Em Síntese
21
UNIDADE Conceitos e Propriedades de Grafos
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
 Vídeos
Estrutura de Dados – Aula 23 – Grafos - Conceitos básicos
https://youtu.be/MC0u4f334mI
Pesquisa Operacional II – Aula 25 – Introdução à Teoria dos Grafos
https://youtu.be/pbDHIMFGgLk
Estrutura de Dados – Aula 23 – Grafos - Conceitos Básicos
https://youtu.be/MC0u4f334mI
Introdução à Teoria dos Grafos – Aula 5 – Grau de um vértice e o problema das Pontes de Königsberg
https://youtu.be/125pPCIRjZ8
22
23
Referências
BOAVENTURA NETTO, Paulo Oswaldo. Grafos: teoria, modelos, algoritmos. 2. ed. 
São Paulo: Edgard Blucher, 2001. 
CORMEN, T. H.; LEISERSON, CHARLES E.; RIVEST, R.; STEIN, C. Algoritmos 
teoria e prática. 2. ed., Campus, 2002.
FEOFILOFF, P.; KOHAYAKAWA, Y.; WAKABAYASHI, Y. Uma Introdução Su-
cinta à Teoria dos Grafos, 2011, Disponível em: <http://www.ime.usp.br/~pf/
teoriadosgrafos/>. Acessado em: 24/11/2018.
FURTADO, A. L. Teoria dos grafos algoritmos, Livros Técnicos e científicos. 
Rio de Janeiro: Editora S.A, 1973.
GOLDBARG, M.; GOLDBARG, E. Grafos conceitos, algoritmos e aplicações. 
São Paulo: Campus, 2012.
HOLANDA, B. Teoria dos Grafos. Relatório técnico. Disponível em: <https://
www.obm.org.br/content/uploads/2017/01/Nivel1_grafos_bruno.pdf>. Acesso em: 
28/11/2018.
NETTO, P. O.; JURKIEWICZ, S. Grafos: Introdução e Prática. 2. ed. São Paulo: 
Blucher, 2017.
NICOLETTI, M. do C.; HRUSCHKA JÚNIOR, Estevam Rafael. Fundamentos da 
teoria dos grafos para computação. São Carlos, SP: EdUFSCar, 2006. 
SIMÕES, J. M. S. Grafos e Redes: Teoria e Algoritmos Básicos. Rio de Janeiro: 
Interciência, 2013.
SZWARCFITER, J. L. Teoria computacional de grafos. 1. ed. São Paulo: Else-
vier. (8 de março de 2018). 
23
Teoria dos Grafos
Material Teórico
Responsável pelo Conteúdo:
Prof. Dr. Cleber Silva Ferreira da Luz
Revisão Textual:
Prof. Me. Luciano Vieira Francisco
Planaridade e Conectividade
• Introdução;
• Conexidade;
• Grafos Finitos e Infinitos;
• Planaridade de Grafo;
• Coloração;
• Representações de Grafos.
• Conhecer todos os conceitos sobre conectividade em grafos, bem como os conceitos de 
grafos fi nitos e infi nitos e de coloração.
OBJETIVO DE APRENDIZADO
Planaridade e Conectividade
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem 
aproveitado e haja maior aplicabilidade na sua 
formação acadêmica e atuação profissional, siga 
algumas recomendações básicas: 
Assim:
Organize seus estudos de maneira que passem a fazer parte 
da sua rotina. Por exemplo, você poderá determinar um dia e 
horário fixos como seu “momento do estudo”;
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
alimentação saudável pode proporcionar melhor aproveitamento do estudo;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos 
e sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão sua 
interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o 
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e 
de aprendizagem.
Organize seus estudos de maneira que passem a fazer parte 
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Determine um 
horário fixo 
para estudar.
Aproveite as 
indicações 
de Material 
Complementar.
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
Não se esqueça 
de se alimentar 
e de se manter 
hidratado.
Aproveite as 
Conserve seu 
material e local de 
estudos sempre 
organizados.
Procure manter 
contatocom seus 
colegas e tutores 
para trocar ideias! 
Isso amplia a 
aprendizagem.
Seja original! 
Nunca plagie 
trabalhos.
UNIDADE Planaridade e Conectividade
Introdução
Nesta Unidade serão abordados alguns conceitos muito importantes na teoria 
dos grafos: conexidade de grafos, grafos finitos e grafos infinitos, planaridade de 
grafos e o teorema de Kuratowski, coloração de grafos e representações de grafos.
O primeiro conceito que estudaremos é conexidade. Este conceito visa o estudo 
da conexidade do grafo. A conexidade analisa se um grafo G é conexo ou não, isto 
é, se partindo de um vértice A é possível chegar ao vértice B ou não. Esta conexi-
dade é observada para todos os vértices do grafo G.
O segundo conceito que será abordado é o de grafos finitos e infinitos. Um gra-
fo é considerado finito quando possui o número finito de vértices e de arestas; caso 
contrário, será infinito.
O terceiro conceito a ser abordado é planaridade de grafos. Um grafo planar 
é aquele imerso em um plano no qual as suas arestas nunca se cruzam. Grafos 
planares são aplicados em:
• Linhas de produção em uma indústria;
• Linhas de transmissão de energia elétrica;
• Rodovias que conectam cidades;
• Circuitos integrados, entre outros.
Planaridade de grafo e o teorema de Kuratowski serão apresentados com mais 
detalhes na Seção 4.
Após estudar o conceito de planaridade de grafos, o próximo assunto que será 
abordado é a coloração de grafos. O problema da coloração é dos mais conheci-
dos na teoria dos grafos, e consiste em colorir um grafo G = (V, A) utilizando a me-
nor quantidade de cores possível. Todavia, colorir um grafo não é tão fácil assim, os 
vértices adjacentes devem possuir cores diferentes – este problema é apresentado 
com mais detalhes na Seção 5.
Por fim, o último assunto abordado nesta Unidade é representações de grafos. 
Existem duas formas de representar um grafo, por listas de adjacências e por 
matriz de adjacências – este assunto é explorado na Seção 6.
Conexidade
O conceito de conexidade analisa se um grafo é conexo ou não, ou seja, verifica 
se partindo do vértice A é possível chegar ao vértice B. Boa parte das aplicações 
modeladas por grafos necessita que um vértice esteja ligado ao outro, ou que de um 
vértice A exista um caminho para chegar ao vértice B.
8
9
Grafo Conexo
Um grafo G = (V, A) é dito conexo se existir um caminho entre qualquer par de 
vértices. Caso contrário, será desconexo. A Figura 1a exemplifica um grafo conexo, 
enquanto a Figura 1b exemplifica um grafo desconexo:
Figura 1 – Grafo conexo e desconexo
Fonte: Acervo do Conteudista
É importante observar que se todos os vértices de um grafo G com n vértices 
tem um grau maior ou igual a n-1
2
, então esse grafo é conexo. Agora, quando no 
grafo não existe nenhuma aresta, é dito totalmente desconexo.
Componente Conexa
Na teoria dos grafos, uma componente conexa de um grafo G = (V, A) é um sub-
grafo conexo maximal de G – para mais detalhes de subgrafos, veja a Unidade II.
O número de componentes conexas em G é denotado por c. Em palavras mais 
simples, um grafo G desconexo é formado por, pelo menos, dois subgrafos cone-
xos; neste caso, cada subgrafo conexo é denominado componente conexa de G.
A Figura 2 ilustra componentes conexas de um grafo G. Grafos conexos pos-
suem apenas uma componente conexa.
Figura 2 – Componente conexa
Fonte: Acervo do Conteudista
Uma componente conexa H = (NH, MH) de um grafo G = (N, M) é chamada de 
ímpar se |NF| for ímpar; caso |NF| for par, será chamada de par. A quantidade 
de componentes ímpares ou pares de um grafo G será denotado por q(G).
9
UNIDADE Planaridade e Conectividade
Conexidade em Arestas
A conexidade em arestas de um grafo conexo de G é denotada pelo menor 
número de arestas cuja remoção resulta na desconexão de G. A Figura 3b 
exemplifica a possibilidade de desconexão do grafo da Figura 3a. Neste exemplo, 
temos que l(G) = 2.
Figura 3 – Conexidade em arestas
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
Conexidade em Vértices
Em um grafo G, a conectividade ou conexidade em vértices é o menor número 
de vértices cuja remoção resulta em um grafo desconexo ou em um grafo 
trivial. Este número é denotado por K(G). A conexidade em vértices é também 
chamada de conexidade de grafo. As figuras 4b e 4c exemplificam as remoções 
de vértices que resultam em um grafo desconexo. Neste exemplo, tem-se K(G) = 1.
Figura 4 – Conexidade em vértices
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
10
11
Grafo K-Conexo
Na teoria dos grafos, um grafo é denominado k-conexo quando para qualquer 
par de vértices de G existem, pelo menos, K caminhos diferentes entre os quais.
As figuras 5b, 5c e 5d ilustram três caminhos diferentes entre o mesmo par de vér-
tice do grafo da Figura 5a. Qualquer que seja o par de vértices do grafo, existirão 
três caminhos diferentes entre os quais; assim, k = 3 para o grafo da Figura 5a.
Figura 5 – Grafos k-conexo
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
A Figura 6 Ilustra um grafo 3-conexo (a), uma desconexão em vértices (b) e uma 
desconexão em arestas (c).
Figura 6 – Grafo conexo, grafo desconexo em vértice e grafo desconexo em arestas
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
11
UNIDADE Planaridade e Conectividade
Vértices Fortemente Conexos
Em um grafo G = (V, A) direcionado, é dito que dois vértices i e j estão forte-
mente conectados, se existe caminho direcionado de i para j e de j para i em G. 
Agora, dois vértices i e j estão fortemente conectados em um grafo G = (V, A) 
não direcionado, se existem dois caminhos distintos em arestas de i para j em G 
(GOLDBARG; GOLDBARG, 2012).
Vértices Fracamente Conexos
Em um grafo G = (V, A) direcionado, é dito que dois vértices i e j estão fraca-
mente conectados, se existe apenas um caminho direcionado de i para j ou de j 
para i em G (GOLDBARG; GOLDBARG, 2012).
Grafo Fracamente Conexo
Na teoria dos grafos, um grafo G = (V, A) direcionado é dito fracamente co-
nexo quando existe, pelo menos, um par de vértices i e j em G tal que o número 
de caminhos entre i e j seja menor que 1 (GOLDBARG; GOLDBARG, 2012). 
A Figura 7 ilustra dois grafos conexos. O grafo apresentado na Figura 7a é forte-
mente conexo, enquanto o grafo apresentado na Figura 7b é fracamente conexo. 
O grafo da Figura 7b é fracamente conexo porque do vértice 5 não é possível che-
gar a qualquer outro vértice.
Figura 7 – Exemplo de grafos fortemente conexo e fracamente conexo.
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
Algoritmo Roy para Encontrar Componentes Conexas
O algoritmo Roy é simples e elegante. Esse algoritmo encontra componentes 
fortemente conexas de um grafo G direcionado através de relações de vizinhança. 
Identifica conjuntos de vértices que possuem sucessores e antecessores comuns. 
A seguir, o algoritmo Roy é apresentado:
12
13
1 - Ler G = (N,M)
2 - i ← 0
3 - V ← N
4 - Enquanto V ≠ ∅ Fazer
5 - Escolher e marcar um vértice qualquer v,v ∈ V, com (+) e (-)
6 - Enquanto for possível marcar com (+) um vértice w não marcado 
com (+) que tenha sucessor um vértice marcado com (+)
7 - Marcar w com (+)
8 - Fim_Enquanto
9 - Enquanto for possível marcar com (-) um vértice w não marcado 
com (-) que tenha como antecessor um vértice marcado com (-)
10 – Marcar w com (-)
11 – Fim_Enquanto
12 – i ← i + 1
13 – Si ← vértices que estão marcados com (+) e (-) simultaneamente 
14 – V ← V \ Si
15 – Desmarcar todos os vértices de v
16 – Fim_Enquanto
Grafos Finitos e Infinitos
Duas definições amplamente utilizadas na teoria dos grafos são as de grafo finito 
e grafo infinito. Um grafo é denominado finito quando possui um número finito de 
vértices e de arestas. Caso o grafo tenha um número infinito de vértices e arestas é 
denominado infinito. O grafo 1 da Figura 8 é finito, já o grafo 2 da mesma Figura é 
infinito, o elemento infinito do grafo 2 é representado por linhas pontilhadas.
Figura 8 – Grafo fi nito e infi nito
Fonte: Acervo do Conteudista
13UNIDADE Planaridade e Conectividade
Planaridade de Grafo
Segundo a literatura, a planaridade de grafos surgiu com Henry Dudeney em 
1913, quem formulou o famoso problema das três casas; neste problema é neces-
sário conectar três casas com três infraestruturas básicas – gás, água e energia –, 
conforme ilustrado na Figura 9. O problema se encontra em realizar estas conexões 
sem que se cruzem.
Figura 9 – Problema das três casas
Fonte: Adaptado de Getty Images
Matematicamente, tal problema pode ser formulado da seguinte maneira: dado 
um grafo K3,3 que é bipartido e completo, gostaríamos de saber se esse grafo pode 
ser desenhado no plano de tal forma que as suas arestas nunca se cruzem.
Depois de entender toda a contextualização da origem da planaridade de gra-
fos, podemos, finalmente, definir um grafo plano. Um grafo G é planar se admite 
uma representação no plano de modo que neste não exista cruzamento de arestas. 
A Figura 10 exemplifica dois grafos planares: 
Figura 10 – Exemplos de grafos planares
Fonte: Acervo do Conteudista
Um grafo planar divide o plano em várias regiões. Uma região é finita se a sua 
área é finita, caso contrário, a região será infinita. A Figura 11 exemplifica dois gra-
fos planos em regiões. O grafo da Figura 11a divide o plano em 4 regiões, enquan-
to o grafo da Figura 11b divide o plano em 10 regiões, sendo a região 10 infinita.
14
15
Figura 11 – Divisão de regiões em grafos planos
Fonte: Acervo do Conteudista
Teorema de Kuratowski
O teorema de Kuratowski diz que um grafo G = (V, A) é planar se e somente 
se G não contiver uma subdivisão K5 ou K3,3. Define uma caracterização de grafos 
planares em termos de um número essencialmente finito de subgrafos proibidos.
A Figura 12a ilustra uma representação do K5, enquanto a Figura 12b uma repre-
sentação do K3,3. Como é possível observar, estes grafos não podem ser planos, 
pois as suas arestas se cruzam.
Figura 12 – Representação do K5 e K3,3
Fonte: Acervo do Conteudista
Coloração
Segundo Goldbarg e Goldbarg (2012), colorir um grafo G = (V, A) é atribuir 
cores aos seus vértices de forma que os vértices adjacentes recebam cores distintas 
– tal procedimento é denominado coloração própria. Colorir um grafo é fácil, uma 
vez que se pode imaginar distribuir uma cor diferente para cada vértice. Todavia, o 
problema da coloração surge quando é necessário colorir o grafo G = (V, A) utili-
zando o menor número possível de cores.
É importante ressaltar que em uma coloração própria todos os vértices adja-
centes do grafo possuem cores diferentes. O menor número de cores que pode 
ser utilizado para coloração própria de um grafo recebe o nome de número cro-
mático. Este número é denotado por X(G).
15
UNIDADE Planaridade e Conectividade
A Figura 13b mostra a coloração do grafo apresentado na Figura 13a. Nesta 
coloração, cada cor diferente é codificada por um número sublinhado:
Figura 13 – Coloração de grafo
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
Outro exemplo de coloração pode ser observado na Figura 14. A Figura 14b 
mostra a coloração do grafo apresentado na Figura 14a:
Figura 14 – Coloração de grafo
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
Grau de Saturação
Na coloração de um grafo, grau de saturação de um vértice é o número de co-
res diferentes que são associadas aos vértices vizinhos a V. Por exemplo, observe o 
grafo apresentado na Figura 15, no qual os vértices são tingidos com quatro cores 
diferentes. Observemos o vértice v1: o grau de saturação deste vértice é 3, uma vez 
que os seus vizinhos estão coloridos com três cores diferentes (1, 2, 4); enquanto o 
vértice v2 também possui um grau de saturação 3, isto é, os seus três vizinhos são 
tingidos com três cores diferentes.
Figura 15 – Grau de saturação
Fonte: Goldbarg e Goldbarg, 2012
16
17
Coloração Harmoniosa
Na coloração de grafos, uma coloração é denotada harmoniosa quando cada par 
de cores aparece, no máximo, em um par de vértices adjacentes no grafo G.
Encontrar uma coloração harmoniosa em um grafo G é NP-Difícil – a Figura 16 
ilustra uma coloração harmoniosa.
Na coloração harmoniosa, às vezes é importante obter o número cromático 
harmonioso, o qual corresponde ao número mínimo de cores necessário a uma 
coloração harmoniosa em G.
Figura 16 – Coloração harmoniosa
Fonte: Goldbarg e Goldbarg, 2012
Coloração Exata
Uma coloração exata pode ser definida como uma coloração própria em que 
cada par de cores aparece exatamente uma vez em cada par de vértices ad-
jacentes em G – a Figura 17 ilustra uma coloração exata:
Figura 17 – Coloração exata
Fonte: Goldbarg e Goldbarg, 2012
Grafo Crítico, Vértice Crítico e Aresta Crítica
Na coloração, um grafo G é denominado crítico quando a remoção de qualquer 
vértice ou aresta acarreta o decréscimo de seu número cromático.
17
UNIDADE Planaridade e Conectividade
Um grafo G é denominado vértice crítico se X(G) > X(G - v), para qualquer que seja 
o vértice v ∈ G; ao passo que um G é denominado aresta crítica se X(G) > X(G - a) 
para qualquer que seja a aresta a ∈ G – observe a Figura 18:
Figura 18 – Grafo crítico
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
As Figuras 18b e 18e exemplificam as possibilidades de remoção de vértices 
e arestas do grafo apresentado na Figura 18a, confirmando a sua condição de 
grafo crítico.
Coloração Forte
Na coloração, dado um conjunto de partições diferentes – no qual os conjuntos 
não possuem vértices em comum – em vértices de G com cardinalidade k, uma 
coloração forte de G é uma coloração própria em que cada cor aparece exatamente 
uma vez em cada possível partição.
Coloração Fraca
Uma coloração fraca é aquela não própria de G em que cada vértice é adjacente 
a, pelo menos, um vértice de cor diferente.
18
19
Figura 19 – Coloração fraca
Fonte: Goldbarg e Goldbarg, 2012
Número Cromático Forte
Segundo (BOAVENTURA, 2012), o número cromático forte é o número míni-
mo de cores necessárias a uma coloração forte em G.
Coloração de Arestas
Uma coloração de arestas de G é uma atribuição de k cores a tais arestas de 
forma que duas arestas incidentes ao mesmo vértice recebam cores distintas.
Figura 20 – Coloração de arestas
Fonte: Goldbarg e Goldbarg, 2012
Representações de Grafos
Existem duas maneiras padronizadas para representar um grafo G(V,A):
• Listas de adjacências;
• Matriz de adjacência.
Habitualmente, a representação de lista de adjacência é mais utilizada, uma vez 
que fornece um modo compacto de representar grafos esparsos. Grafos esparsos 
são aqueles nos quais |A| é consideravelmente menor que |V|2. A representação 
19
UNIDADE Planaridade e Conectividade
de grafo na forma de matriz de adjacência é mais utilizada quando o grafo é 
denso, ou quando é necessário saber com rapidez se existe uma aresta conectan-
do dois vértices dados. Um grafo denso é aquele onde |A| está próximo de |V|2 
(CORMEN et al., 2002).
Representação de Grafo por Lista de Adjacência
Dado um grafo G = (V,A), a sua representação por lista de adjacência consiste 
em um arranjo adj. de |V| lista, uma para cada vértice em V. Para cada u ∈ V, 
a lista de adjacência Adj|u| possui um ponteiro para todos os vértices V tais que 
existe uma aresta (u,v) ∈ A. Isto é, Adj|u| consiste em todos os vértices adjacentes 
a u em G. Em geral, os vértices em cada lista de adjacências estão armazenados em 
uma ordem arbitrária (CORMEN et al., 2002). 
A Figura 21a apresenta um grafo G = (5,7), ao lado, a Figura 21b apresenta a 
representação deste grafo em forma de listas de adjacências:
Figura 21 – Exemplo de lista de adjacência
Fonte: Adaptado de Cormen e colaboradores, 2002
A representação de grafo na forma de lista de adjacência pode ser perfeitamente 
adaptada para grafos ponderados, isto é, grafos que possuem pesos associados 
em suas arestas. Habitualmente, os pesos são denotados por uma função peso w: 
E → R. Para facilitar, considere G = (V, A) como um grafo ponderado com função 
peso w. O peso w(u,v) da aresta (u,v) ∈ A está simplesmente armazenadocom o 
vértice v na lista de adjacência de (u). A representação de grafo na forma de lista 
de adjacência é bastante robusta nesse aspecto, podendo ser totalmente modificada 
para admitir muitas outras formas de grafos (CORMEN et al., 2002).
A Figura 22 apresenta um exemplo de representação de lista de adjacência para 
um grafo G = (6,8) orientado:
20
21
Figura 22 – Exemplo de lista de adjacência para grafos orientados
Fonte: Adaptado de Cormen e colaboradores, 2002
Em grafos orientados, a soma dos comprimentos de todas as listas de adjacên-
cias é |A|, porque uma aresta da forma (u,v) é representada fazendo-se v aparecer 
em Adj[u]. Já em grafos não orientados, a soma dos comprimentos de todas as 
listas de adjacências é 2|A|, porque se (u,v) é uma aresta não orientada, então u 
aparece na lista de adjacências de v e vice-versa (CORMEN et al., 2002).
Em questão de memória, a representação de grafo na forma de lista de adjacên-
cia exige θ (V+A).
A grande desvantagem da representação na forma de lista de adjacência é que 
não é possível determinar se uma dada aresta está presente no grafo quando se 
procura por v na lista de Adj.[u]. Para contornar essa desvantagem, podemos utili-
zar uma matriz de adjacência cuja representação é apresentada na próxima Seção.
Representação de Grafo por Matriz de Adjacência
A representação de um grafo G = (V, A) na forma de matriz de adjacência con-
siste em uma matriz |V| x |V| A = (aij) tal que:
( )
ij
1 se i, j A
a =
0 em caso contrário
∈  
 
  
Por exemplo, se o vértice 3 possui uma conexão com o vértice 4, isto é, se exis-
tir uma aresta que ligue o vértice 3 ao vértice 4, colocamos 1 no elemento a34 da 
matriz de adjacência.
21
UNIDADE Planaridade e Conectividade
A matriz de adjacência pode ser conceituada como uma matriz na qual os vérti-
ces são representados por linhas e colunas. Se houver uma ligação entre os vérti-
ces, é colocado 1 no seu respectivo elemento; caso não haja uma ligação entre os 
vértices, é colocado 0 em seu respectivo elemento. A Figura 23b ilustra uma matriz 
de adjacência para um grafo G = (5,7):
Figura 23 – Exemplo de matriz de adjacência
Fonte: Adaptado de Cormen e colaboradores, 2002
A matriz de adjacência também pode ser aplicada para grafos orientados. 
A Figura 24b ilustra uma matriz de adjacência de um grafo orientado:
Figura 24 – Exemplo de matriz de adjacência para grafos orientados
Fonte: Adaptado de Cormen e colaboradores, 2002
A representação de um grafo na forma de matriz de adjacência de um consome 
θ (V2) de memória do outro, independentemente da quantidade de arestas no grafo.
Observe a matriz de adjacência apresentada na Figura 24b. Veja a simetria ao 
longo da diagonal principal da matriz. Nesta simetria, a parte superior da diago-
nal principal é igual a parte inferior da diagonal principal. Quando essa simetria 
ocorre, é possível obter a matriz transposta. A transposta de uma matriz A = (aij) 
é definida como a matriz AT = )Tij(a dada por )
T
ij(a = aji. Partindo do princípio que 
em um grafo não orientado, (u,v) e (v,u) representa a mesma aresta, a matriz de 
adjacência A de um grafo não orientado é sua própria transposta: A = Ab. Vale 
ressaltar que dependendo da aplicação, compensa armazenar apenas as entradas 
contidas na diagonal e acima da diagonal da matriz de adjacência, possibilitando 
reduzir quase pela metade a memória necessária para armazenar o grafo.
22
23
Da mesma maneira que a lista de adjacência, a matriz de adjacência também 
pode ser usada no caso de grafos ponderados. Considere o seguinte exemplo, se 
G = (V, A) é um grafo ponderado com função peso de aresta w, o peso w(u,v) da 
aresta (u,v) ∈ A é simplesmente armazenado como a entrada na linha u e na colu-
na v da matriz de adjacência. Caso uma aresta não exista, pode ser armazenado o 
valor null ou 0, como sua entrada de matriz correspondente.
Embora a representação de grafo na forma de lista de adjacência seja assintoti-
camente tão eficiente quanto a representação de matriz adjacência, a simplicidade 
de uma matriz de adjacência pode ser preferível quando os grafos são consideravel-
mente pequenos. É interessante observar também que, se o grafo é não ponderado, 
existe uma vantagem adicional na questão de espaço de armazenamento, sendo 
favorável à representação de matriz de adjacência. A matriz de adjacência utiliza 
menos memória, pelo fato de armazenar apenas um bit (0 ou 1) por entrada.
Importante!
Nesta Unidade estudamos conceitos importantes sobre a teoria dos grafos. Conceitos 
como: conexidade de grafos, grafos finitos e infinitos, planaridade de grafos e o teorema 
de Kuratowski, coloração de grafos e representações de grafos.
O conceito de conexidade é amplamente aplicado na modelagem de problemas utilizan-
do grafos. Um grafo G = (V, A) é dito conexo se existir um caminho entre qualquer par de 
vértices; caso contrário, será desconexo.
Duas definições amplamente utilizadas na teoria dos grafos são as de grafo finito e gra-
fo infinito. Um grafo é denominado finito quando possui um número finito de vértices 
e de arestas. Caso tenha um número infinito de vértices e arestas é denominado infinito.
O conceito de planaridade de grafos permite definir se um grafo é planar ou não – um 
grafo planar é aquele imerso no plano e as suas arestas nunca se cruzam.
A coloração de um grafo consiste em colorir um grafo G = (V, A) utilizando a menor 
quantidade de cores possível. Todavia, um vértice A não pode ser colorido com a mesma 
cor do seu adjacente.
Habitualmente, grafos podem ser representados por duas formas padronizadas, listas 
de adjacências e matriz de adjacências. Tanto a lista de adjacência como a matriz de 
adjacência representam o conjunto de vértices e arestas de um grafo G.
Em Síntese
23
UNIDADE Planaridade e Conectividade
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
 Livros
Grafos: Teoria, Modelos, Algoritmos
AVENTURA NETTO, P. O. Grafos: teoria, modelos, algoritmos. 5. ed. São Paulo: 
Edgard Blucher, 2012.
Introdução à Teoria dos Grafos
CLÁUDIO, L. L. Introdução à teoria dos grafos. [S.l.]: Impar, 2016.
Fundamentos da Teoria dos Grafos para Computação
NICOLETTI, A. M.; HRUSCHKA JÚNIOR, E. R. Fundamentos da teoria dos grafos 
para computação. São Carlos, SP: Edufscar, 2006.
 Leitura
Matemática Discreta: Combinatória, Teoria dos Grafos e Algoritmos
CARDOSO, M.; SZYMANSKI, J.; ROSTAMI, M. Matemática discreta: combinatória, 
teoria dos grafos e algoritmos. [S.l.]: Escolar, 2009
https://bit.ly/2KON8LQ
24
25
Referências
BOAVENTURA NETTO, P. O. Grafos: teoria, modelos, algoritmos. 2. ed. São 
Paulo: Edgard Blucher, 2001.
______.; JURKIEWICZ, S. Grafos: introdução e prática. 2. ed. [S.l.]: Blucher, 2017.
CORMEN. T. et al. Algoritmos – teoria e prática. 2. ed. [S.l.]: Campus, 2002.
FEOFILOFF, P.; KOHAYAKAWA, Y.; WAKABAYASHI, Y. Uma introdução su-
cinta à teoria dos grafos. 2018. Disponível em: <http://www.ime.usp.br/~pf/
teoriadosgrafos>. Acesso em: 24 nov. 2018.
FURTADO, A. L. Teoria dos grafos algoritmos. Rio de Janeiro: Livros Técnicos 
e Científicos, 1973.
GOLDBARG, M.; GOLDBARG, E. Grafos – conceitos, algoritmos e aplicações. 
[S.l.]: Campus, 2012.
HOLANDA, B. Teoria dos grafos. 2011. Disponível em: <https://www.obm.org.
br/content/uploads/2017/01/Nivel1_grafos_bruno.pdf>. Acesso em: 28 nov. 2018.
NICOLETTI, A. M.; HRUSCHKA JÚNIOR, E. R. Fundamentos da teoria dos 
grafos para computação. São Carlos, SP: Edufscar, 2006.
SIMÕES, J. M. S. Grafos e redes: teoria e algoritmos básicos. [S.l.]: Interciência, 2013.
SZWARCFITER, J. L. Teoria computacional de grafos. [S.l.]: Elsevier, 2018.
TEORIA dos grafos. [20--a]. Disponível em: <https://miltonborba.org/Algf/Gra-
fos.htm#Def_basicas>. Acesso em: 28 nov. 2018.
TEORIA dos grafos – aula 2. 20--b]. Disponível em: <http://www.riopomba.if-
sudestemg.edu.br/dcc/dcc/materiais/1469415723_Teoria%20dos%20Grafos%20-
-%20aula2.pdf>. Acesso em: 28 nov. 2018.
25
Teoria dosGrafos
Material Teórico
Responsável pelo Conteúdo:
Prof. Dr. Cleber Silva Ferreira da Luz
Revisão Textual:
Prof. Me. Luciano Vieira Francisco
Algoritmos de Busca em Grafos
• Introdução;
• Busca em Grafos.
• Conhecer todos os principais conceitos de busca em grafos.
OBJETIVO DE APRENDIZADO
Algoritmos de Busca em Grafos
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem 
aproveitado e haja maior aplicabilidade na sua 
formação acadêmica e atuação profissional, siga 
algumas recomendações básicas: 
Assim:
Organize seus estudos de maneira que passem a fazer parte 
da sua rotina. Por exemplo, você poderá determinar um dia e 
horário fixos como seu “momento do estudo”;
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
alimentação saudável pode proporcionar melhor aproveitamento do estudo;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos 
e sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão sua 
interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o 
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e de 
aprendizagem.
Organize seus estudos de maneira que passem a fazer parte 
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Determine um 
horário fixo 
para estudar.
Aproveite as 
indicações 
de Material 
Complementar.
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
Não se esqueça 
de se alimentar 
e de se manter 
hidratado.
Aproveite as 
Conserve seu 
material e local de 
estudos sempre 
organizados.
Procure manter 
contato com seus 
colegas e tutores 
para trocar ideias! 
Isso amplia a 
aprendizagem.
Seja original! 
Nunca plagie 
trabalhos.
UNIDADE Algoritmos de Busca em Grafos
Introdução
Técnicas de busca em grafos são utilizadas em diversas modelagens utilizando 
grafos. Em inúmeros problemas há necessidade de visitar os vértices do grafo. 
Diferentes algoritmos de busca em grafos foram propostos ao longo dos anos, de 
modo que nesta Unidade estudaremos os principais algoritmos de busca em grafos, 
a saber; busca em profundidade e busca em largura.
O algoritmo de busca em profundidade realiza a procura em grafo G; começa no 
vértice raiz e explora tanto quanto possível cada um de seus ramos. Já o algoritmo 
de busca em largura também começa a procura por um vértice raiz e explora todos 
os seus vizinhos. Assim, começaremos a estudar um algoritmo genérico de busca. 
Busca em Grafos
Algoritmos de busca em grafos são utilizados para solucionar diversos proble-
mas. O seguinte Quadro apresenta um algoritmo para uma busca genérica:
Quadro 1
Ler G = (N, M)
Escolher e marcar um vértice i
Enquanto existir j Є N marcado com uma aresta (j, k) não explorado Fazer
 Escolher o vértice j e explorar a aresta (j, k)
 // condição variável em conformidade com o tipo de busca //
 Se k é não marcado então marcar k
Fim_do_Enquanto
Fonte: Acervo do conteudista
Um exemplo de aplicação que utiliza busca em grafos é dado no problema de 
encontrar a saída em um labirinto. Observe, na Figura 1a, um simples labirin-
to. O problema consiste em encontrar uma saída para o qual. É possível mode-
lar este problema com grafos e encontrar uma saída utilizando busca em grafo 
(GOLDBARG; GOLDBARG, 2012). 
Já a Figura 1b ilustra o começo do processo de modelagem. Primeiro, são colo-
cados círculos margeando todas as paredes do labirinto. Estes círculos representam 
vértices dos grafos e são pontos de mudanças de direção no caminho do labirinto. 
8
9
Entrada
Saída
Entrada
Saída
a) Labirinto b) Pontos de mudança de direção
Figura 1 – Transformação de um labirinto em um grafo
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
Nesta modelagem, as arestas mostram a possibilidade de movimento no labirin-
to. A Figura 2a ilustra as arestas e os vértices representados dentro do labirinto; já 
a Figura 2b apresenta o grafo modelado no labirinto:
Entrada
Saída
Entrada
Saída
a) Grafo no labirinto b) Grafo do labirinto
Figura 2 – Grafo do labirinto
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
Para encontrar a saída do labirinto é necessário percorrer os diversos caminhos 
possíveis. A forma mais simples de encontrar a saída do labirinto sem nunca percor-
rer mais de uma vez uma mesma parede consiste em rotular as arestas percorridas 
na busca, de modo a nunca transitar uma aresta anteriormente rotulada. A busca 
começa pela entrada do labirinto, isto é, pelo vértice que representa a entrada no 
labirinto, continuando até que o vértice que representa a saída seja alcançado.
As figuras 3a e 3b ilustram duas possíveis sequências de visita no grafo quando 
aplicado o algoritmo da busca genérica: o caminho exemplificado na Figura 3a 
consiste na visita ao vértice 1, caminhando depois pelas arestas (1,2), (2,3), (3,4), 
(4,5), (5,6), (6,7), (7,8), neste momento, o ciclo se fecha sobre o vértice 4 e pela 
aresta (8,4), continuando, são percorridas as arestas (4,9), (9,10), (10,11), (11, 12), 
9
UNIDADE Algoritmos de Busca em Grafos
(12,13) e, por fim, pela aresta (13,14). A Figura 3b apresenta uma busca mais efi-
ciente, inicialmente visitando o vértice 1 e percorrendo as arestas (1,2), (2,3), (3,4), 
(4,5), (5,6), (6,7), (7,8), chegando ao vértice 8, ou seja, à saída do labirinto.
a) Busca 1
14
1 12 2
3
34
49
11
10
12
13
5
5
8
8
6
6
7
7
b) Busca 2
Figura 3 – Busca no grafo do labirinto
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
Diversos algoritmos são construídos com base no algoritmo genérico. Esses 
algoritmos variam o critério de avaliação dos vértices e das arestas. Assim, um 
algoritmo muito eficiente e elegante é conhecido como algoritmo de busca em 
profundidade – sobre o qual estudaremos na próxima seção.
Busca em Profundidade
A técnica de busca em profundidade tem se mostrado útil no desenvolvimento 
de algoritmos eficientes que resolvem problemas, tal como encontrar componentes 
fortemente conexos de um grafo (CORMEN et al., 2002).
O algoritmo conhecido como Busca em Profundidade (BP) é desenvolvido so-
bre um algoritmo genérico; todavia, a seleção de vértice é realizada sobre o vértice 
não marcado mais recentemente alcançado na busca – os passos que a BP realiza 
são apresentados a seguir:
Quadro 2
Procedimento BP(v)
marcar v
Enquanto existir w Є Γ(V) fazer
 Se w é não marcado
 explorar (v, w)
 marca w
 BP(w)
 Senão
 Se (v,w) não explorada
 explorar(v,w)
Fim_Enquanto
Fonte: Acervo do conteudista
10
11
Importante!
Note que esse procedimento é recursivo, considerando um grafo conexo e não direcional 
(GOLDBARG; GOLDBARG, 2012).
Importante!
Aplicando o procedimento de busca em 
profundidade em um grafo G a partir de um 
vértice v qualquer, os vértices marcados e as 
arestas exploradas em consequência da satis-
fação da condição do primeiro “se” compõem 
uma subárvore de G, denominada árvore de 
profundidade de G – as demais são denomi-
nadas arestas de retorno.
Analisaremos a busca em profundidade 
por meio de um exemplo; para isso, consi-
dere o grafo apresentado na Figura 4:
1
2
3
4
5
6 7
Figura 4 – Exemplo de grafo 
para a busca em profundidade
Fonte: Adaptado de Goldbarg e Goldbarg, 2012
Aplicaremos o algoritmo da busca em profundidade no grafo apresentado (Figu-
ra 4), partindo do vértice 1. As figuras 5a a 5f ilustram a aplicação do procedimento 
da busca em profundidade: 
1
1
2
2
3
1
2
3
a) Aresta (1, 2) b) Aresta (2, 3) c) Aresta (3, 1)
d) Aresta (3, 4) e) Aresta (4, 5) f) Aresta (5, 3)
1
2
3
1
2
3
4
4
5
4
5
1
2
3
Figura 5 – Busca

Outros materiais