You are on page 1of 13

Grafos e Árvores

Grafo - Representação gráfica de elementos de dados e das conexões entre alguns destes itens.

Exemplo: Mapa de rotas aéreas de uma companhia aérea.


Chicago

San Francisco Nashville


Denver
St. Louis

Albuquerque
Phoenix Dallas
Miami
Los Angeles

Definição: Um grafo é uma tripla ordenada (N, A,g) onde:

N = um conjunto não vazio de vértices (nós ou nodos)


A = um conjunto de arestas (arcos)
g = uma função que associa cada aresta a a um par não ordenado x-y de vértices
chamados extremos de a.

Exemplo: O grafo abaixo tem cinco vértices e seis arestas. A função que associa as arestas aos seus
extremos assume os seguintes valores:
g (a1 ) = 1 − 2, g (a 2 ) = 1 − 2, g (a 3 ) = 2 − 2, g (a 4 ) = 2 − 3, g (a5 ) = 1 − 3, g (a6 ) = 3 − 4

a3

a2 2
a1 a4

1 a5 3 a6 4 5

Terminologia dos grafos

Vértices adjacentes – dois vértices são ditos adjacentes se forem extremos de uma mesma aresta.
Exemplo: No grafo acima 1 e 3 são adjacentes, o vértice 2 é adjacente a ele mesmo.
Vértice isolado – não é adjacente a qualquer outro vértice.
Exemplo: No grafo acima 5 é um vértice isolado.
Laço - em um grafo é uma aresta com extremos n-n para algum nó n.
Exemplo: No grafo acima a aresta a3 é um laço com extremos 2-2.
Arestas paralelas – duas arestas que tenham os mesmos extremos.
Exemplo: No grafo acima as arestas a1 e a2 são paralelas.
Grafo Simples – grafo que não tenha arestas paralelas nem laços.
Grau de um vértice – é o número de arestas que o tem como ponto extremo.
Exemplo: No grafo acima o vértice 1 tem grau 3, o vértice 2 tem grau 5, o vértice 5 tem grau 0.
Grafo Completo – é aquele no qual todos os vértices distintos são adjacentes.
Subgrafo – de um grafo consiste em um conjunto de vértices e um conjunto de arestas que são
subconjuntos de vértices e arestas originais. Em outras palavras, é um grafo obtido apagando-se parte
do grafo original.
Exemplo:
a3

a2 2
a1

1 a5 3

Caminho – de um vértice n0 a um vértice nk é uma seqüência n0, a0, n1, a1, ....., nk-1, ak-1, nk de vértices e
arestas, onde, para cada i, os extremos da aresta ai, são ni – ni+1.
Exemplo: No grafo acima, um caminho do vértice 2 ao 4 consiste na seqüência 2, a1, 1, a2, 2, a4. 3, a6, 4.
Comprimento – de um caminho é o número de arestas que ele contém; se uma aresta for usada mais
de uma vez deverá ser contada novamente. O comprimento do caminho descrito no exemplo acima é
igual a 4.
Grafo Conexo – é um grafo onde existe um caminho entre quaisquer dois vértices.
Ciclo – em um grafo é um caminho de algum vértice n0 até n0 de novo de forma que nenhum vértice
ocorra mais de uma vez no caminho, n0, é o único vértice que ocorre mais de uma vez e apenas nos
extremos do caminho. Os vértices e as arestas podem repetir-se em um caminho, mas não em um
ciclo, exceto pelo vértice n0.
Exemplo: 1, a1, 2, a4. 3, a5, 1 é um ciclo no grafo. Um grafo sem ciclo é dito acíclico.

Árvores – Uma árvore é um grafo acíclico e conexo com um nó designado como a raiz da árvore. As
figuras abaixo mostram duas árvores.

r
r

Um grafo acíclico e conexo sem a designação de um vértice como raiz é chamado de árvore não-
enraizada. Um único vértice é uma árvore (este vértice é a raiz). Se T1, T2, ..., Tt são árvores disjuntas
com raízes r1, r2, ...,rt, o grafo formado pela ligação de um novo vértice r, por uma única aresta a cada
um dos vértices r1, r2, ...,rt, constitui uma árvore de raiz r. Os vértices r1, r2, ...,rt são filhos de r, e r é o pai
de r1, r2, ...,rt.

1
r

r1 r2

T1
T2

Definições:

9Dado que a árvore é um grafo conexo, existe um caminho entre a raiz e todos os vértices da árvore,
como a árvore é acíclica, este caminho é único.
9A profundidade de vértice em uma árvore é o comprimento do caminho da raiz até o vértice; em
particular, a raiz tem profundidade 0.
9 A altura (profundidade) da árvore é a maior profundidade de todos seus vértices; é o comprimento do
maior caminho entre a raiz e um vértice.
9Um vértice sem filhos é chamado de folha; os vértices que não são folhas são chamados de vértices
internos ou nós internos.
9Uma floresta é qualquer grafo acíclico (não necessariamente conexo); portanto, uma floresta é uma
coleção de árvores disjuntas.
9Árvore Binária, onde cada nó tem no máximo dois filhos, aqui cada filho é designado como filho à
esquerda e ou filho à direita do nó.
9 Uma árvore binária completa é aquela em que todos os nós internos têm dois filhos e todas as folhas
têm a mesma profundidade. A figura a abaixo mostra uma arvore binária de altura 4 e a figura b abaixo
mostra uma arvore binária completa de altura 3.
9 Uma árvore com n nós tem n-1 arestas.

Figura a Figura b

Exercícios:
1. Trace um grafo que tenha os vértices {1, 2, 3, 4, 5}, as arestas { a1, a2, a3, a4. a5, a6} e a função
g (a1 ) = 1 − 2, g (a2 ) = 1 − 3, g (a3 ) = 3 − 4, g (a4 ) = 3 − 4, g (a5 ) = 4 − 5, g (a6 ) = 5 − 5 . Com relação ao grafo
obtido, encontre:
a)dois vértices que não sejam adjacentes b) um vértice que seja adjacente a ele mesmo;
c) um laço; d) duas arestas paralelas
e) o grau do vértice 3; f) um caminho de comprimento 5.
g) este grafo é completo? h) este grafo é conexo?
2
2. Responda as seguintes perguntas sobre o grafo mostrado a seguir:

4 a) Este grafo é simples?


b) Este grafo é completo?
a3 a4
c) Este grafo é conexo?
3 5
a5 d) Existem dois caminhos entre os
a2
vértices 3 e 6?
2 a6
e) Este grafo possui algum ciclo?
a1
7 f) O grafo possui algum vértice cuja
a7
6 remoção o tornaria uma árvore?
1
g) O grafo possui algum vértice cuja
remoção o tornaria desconexo?

3. Esboce uma figura para cada um dos seguintes grafos


a) um grafo simples com 3 vértices, cada qual com grau 2.
b) Uma árvore com cinco vértices de altura 1

4. Responda as perguntas a seguir sobre a árvore mostrada na figura abaixo

1
a) Qual é a altura?
2
b) Qual é o filho à esquerda do nó 2?
3 c) Qual a profundidade do nó 5?

4
5

5. Responda as perguntas a seguir sobre a árvore abaixo com o vértice a como raiz.
a
a) Ela é uma árvore binária?
b) Ela é uma árvore binária completa?
b c c) Qual o pai do vértice e?
d) Qual é o filho à esquerda do vértice e?
e) Qual a altura de g?
f) Qual a altura da arvore?
d e f g

h i

Grafos Direcionados

Podemos desejar que as arestas de um grafo comecem em um vértice e terminem em outro,


neste caso, podemos usar um grafo direcionado

Definição: Um grafo direcionado (dígrafo) é uma tripla ordenada (N, A,g) onde:

N = um conjunto não vazio de vértices (nós ou nodos)


A = um conjunto de arestas (arcos)
g = uma função que associa cada aresta a um par ordenado (x,y) de vértices,
onde x é o ponto inicial e y é o ponto final de a.
3
Em um grafo direcionado, a definição de caminho do vértice n0 a um vértice nk é uma seqüência
n0, a0, n1, a1, ....., nk-1, ak-1, nk onde, para cada i, ni é o ponto inicial e ni+1 é o ponto final de ai. Se existe
um caminho do vértice n0 até o vértice nk, então nk é alcançável a partir de n0 A definição de ciclo
também se aplica a grafos direcionados.

Exemplo: No grafo direcionado abaixo, existem diversos caminhos do vértice 1 ao vértice 3: 1, a4, 3 e 1,
a1, 2, a2, 2, a3, 3 são dois possíveis caminhos. O vértice 3 é certamente alcançável a partir do vértice 1.
O vértice 1, no entanto, não é alcançável a partir de qualquer outro vértice. Os ciclos do grafo são o laço
a2, e o caminho 3, a5, 4, a6, 3.

a2

2
a1 a3
a4
1 3
a5
a7 a6

Exercício

6. Use o grafo direcionado da figura a seguir para responder as perguntas abaixo:

6 5
a) Quais vértices são alcançáveis a partir do vértice 3?
b) Qual é o comprimento do menor caminho entre 3 e 6?
c) Qual é o caminho do vértice 1 ao vértice 6 com
comprimento 8?
1 4

2
3

Grafos Isomorfos

Definição: Dois grafos (N1 , A1 , g 1 ) e (N 2 , A2 , g 2 ) são isomorfos se existirem bijeções f1 : N1 → N 2 e


f 2 : A1 → A2 tais que para cada aresta a ∈ A1 , g 1 (a ) = x − y se, e somente se, g 2 [f 2 (a )] = f1 (x ) − f1 (y )

Para mostrar que duas estruturas são isomorfas, precisamos produzir novos rótulos e então
mostrar que as propriedades importantes das estruturas são preservadas pelo novo rotulamento. No
caso de grafos, os elementos são vértices e arestas. A propriedade importante em um grafo é a lista de
quais arestas conectam quais vértices. Dois grafos podem parecer ser muito diferentes em suas
representações gráficas, mas serem, ainda assim, o mesmo grafo de acordo com a definição. Observe
as figuras abaixo.
4
3 2
2 3
e1

a2

a1 a2

a1 a
b
e2

1 4 1 4
c d

Figura c
Figura a Figura b

Note que os grafos das figuras a e b são os mesmos, eles têm os mesmos vértices, as mesmas
arestas e a mesma função de associação de arestas e seus extremos. (Na representação de um grafo
as arestas podem interceptar-se em pontos que não sejam vértices do grafo). O grafo da figura c
também é o mesmo. Se mudarmos os rótulos dos vértices e arestas do grafo da figura a segundo a
correspondência a seguir, os grafos se tornarão os mesmos.
f1 : 1 → a f2 : a1 → e2
2→c a2 → e1
3→b
4→d
Grafos isomorfos são considerados “os mesmos”, exceto por diferenças cosméticas na forma
como são desenhados ou rotulados, enquanto que grafos não-isomorfos têm diferenças
estruturais.

Teorema sobre Isomorfismo de Grafos Simples


Dois grafos simples (N1 , A1 , g 1 ) e (N 2 , A2 , g 2 ) são isomorfos se houver uma bijeção f : N1 → N2 tal que
para quaisquer vértices ni e nj de N1, ni e nj são adjacentes se, e somente se, f(ni ) e f(nj) são adjacentes.
(A função f é chamada de isomorfismo do grafo 1 no grafo 2).

Exemplo: Encontre um isomorfismo do grafo a no grafo b.


1 a f :1→ d
2→e
4 5 b 3→f
4→c
c
5→b
6 →a
2 3
d

6 e f

(a)
(b)

5
Existem certas condições sob as quais se torna mais fácil ver se dois grafos não são isomorfos.
Essas condições incluem:
1. um grafo tem mais vértices que o outro.
2. um grafo tem mais arestas que o outro.
3. um grafo tem arestas paralelas e o outro não.
4. um grafo tem um laço e o outro não.
5. um grafo tem um vértice de grau k e o outro não.
6. um grafo é conexo e o outro não.
7. um grafo tem um ciclo e o outro não

Exemplo: Mostre que os dois grafos abaixo não são isomorfos:

a b

1. um grafo tem mais vértices que o outro.(não)


2. um grafo tem mais arestas que o outro.(não)
3. um grafo tem arestas paralelas e o outro não. (sim, a tem e b não)
4. um grafo tem um laço e o outro não.(não)
5. um grafo tem um vértice de grau k e o outro não.(sim, a tem dois vértices de grau 2 e b não)
6. um grafo é conexo e o outro não.(não)
7. um grafo tem um ciclo e o outro não. (não)

Exemplo: Mostre que os dois grafos abaixo não são isomorfos:

1. um grafo tem mais vértices que o outro.(não)


2. um grafo tem mais arestas que o outro.(não)
3. um grafo tem arestas paralelas e o outro não. .(não)
4. um grafo tem um laço e o outro não.(não)
5. um grafo tem um vértice de grau k e o outro não. .(não)
6. um grafo é conexo e o outro não.(não)
(a) 7. um grafo tem um ciclo e o outro não .(não)

Se todas as condições são falsas parece que os grafos são isomorfos,


porém o grafo b tem um vértice de grau 2 que é adjacente a dois
vértices de grau 3; o que não ocorre no grafo a, portanto, os grafos
não são isomorfos

Grafos isomorfos são considerados “os mesmos”, exceto por


diferenças cosméticas na forma como são desenhados ou rotulados,
(b)
enquanto que grafos não-isomorfos têm diferenças estruturais.
6
Exercícios

7. Qual dos grafos da figura abaixo não é isomorfo aos outros? Por que?

(a) (b) (c)

8. Qual dos grafos da figura abaixo não é isomorfo aos outros? Por que?

(a) (b) (c) (d) (e)

9. No exercício a seguir diga se os dois grafos apresentados são ou não isomorfos. Se forem,
apresente a função que estabelece o isomorfismo entre eles; caso contrário, explique por quê.

7
8
Outras Propriedades de Grafos

A figura abaixo mostra os grafos simples completos com 1, 2, 3 e 4 vértices. Estes grafos são
denotados por Kn.

K1 K2 K3 K4

Grafo Bipartido Completo

Considere agora o grafo simples abaixo. Ele não é um grafo completo porque nem todo o vértice
é adjacente a todos os demais vértices. No entanto, os vértices podem ser divididos em dois conjuntos
disjuntos, {1, 2} e {3, 4, 5} de tal forma que quaisquer dois vértices tomados no mesmo conjunto não são
adjacentes, mas todos dois vértices escolhidos em conjuntos diferentes são adjacentes. Grafos deste
tipo são chamados de grafos bipartidos completos ou grafos bipartites completos.
1 2

3 4 5

Definição

Um grafo é um grafo bipartido completo se seus vértices podem ser particionados em dois
conjuntos não vazios N1 e N2 tais que dois vértices x e y sejam adjacentes se, e somente se,
x ∈ N1 , e y ∈ N2 . Se N1 = m e N2 = n , este gráfico é denominado por Km,n.
A figura acima mostra, portanto, K2,3.

Exercício
10. Desenhe os grafos simples completos K5, K3,3, K6, K3,4.

Planaridade

Um grafo planar é um grafo que pode ser desenhado em um plano, de forma que suas arestas se
interceptem apenas em vértices. O grafo a abaixo é notoriamente planar. No entanto, sabemos que ele
é isomorfo ao grafo b, portanto este também é planar.

3 2 2 3

a1 a2
a1 a2

1 4
1 4
Figura b
Figura a

9
Teorema sobre o Número de Vértices e Arestas

Para um grafo conexo, simples e planar com n vértices e a arestas:

1. Se a representação planar divide o plano em r regiões, então:


n − a + r = 2 (Fórmula de Euler)
2. Se n ≥ 3 , então
a ≤ 3n − 6
3. Se n ≥ 3 e não existem ciclos de comprimento 3, então
a ≤ 2n − 4
Podemos usar este teorema para demonstrar que certos grafos não são planares.

Exemplo: Verifique se o grafo K5, abaixo, é um grafo conexo, simples e planar utilizando o teorema
sobre o número de vértices e arestas.
1

5 2

4 3

Da figura podemos concluir que K5 é um grafo conexo simples com 5 vértices e 10 arestas, no entanto
não sabemos se o grafo é planar Podemos, por exemplo, utilizar a desigualdede 2 do teorema para
a = 10
verificar a planaridade. Sabemos que .
n=5
a ≤ 3n − 6
Do teorema temos: a ≤ 3 ⋅ 5 − 6 . Portanto, K5 não é planar. Vamos tentar construir K5 sem que suas
a≤9
arestas se interceptem, começando apenas com algumas arestas e incluindo, dentro do possível, novas
arestas que não interceptem as já concluidas.

1 1 1

5 2 5 2 5 2

4 3 4 3 4 3

(a) (b) (c)

10
Note que não existe maneira de traçar uma areste entre os vertice 3 e 5 , no mesmo plano, sem
interceptar outras arestas, portanto, conforme já haviamos concluido anteriormente K5, não é planar.

Grafos Homeomorfos

Dois grafos são homeomorfos se ambos puderem ser obtidos do mesmo grafo por uma seqüência
de subdivisões elementares, nas quais uma única aresta x-y é substituida por duas novas arestas x-v e
v-y que se conectam a um novo vértice v.

Exemplo: Os grafos (b) e (c) da figura abaixo são homeomorfos porque podem ser obtidos do grafo (a)
por meio de uma seqüência de subdivisões elementares. (no entanto, um não pode ser obtido do outro
por meio de subdivisões elementares).

(a) (b) (c)

Teorema de Kuratowski
Um grafo é não planar se, e somente se, contém um subgrafo homeomorfo a K5 ou K3,3.
Exercícios

11. Verifique se o grafo K3,3 é um grafo conexo, simples e planar.


12. Verifique se a fórmula de Euler se aplica para o grafo da figura abaixo

13. Demonstre que K2,3 é um grafo planar


14. Demonstre que o grafo da figura abaixo é um grafo planar.

15. Se um grafo simples, conexo e planar tem seis vértices, todos de grau 3, em quantas regiões ele
divide o plano?
16. Se todos os vértices de um grafo simples, conexo e planar tem grau 4 e o número de arestas é
12, em quantas regiões ele divide o plano?

Coloração

Suponha que um mapa de vários países desenhados em uma folha de papel precise ser pintado
de forma que dois países vizinhos não possam ter a mesma cor. (Não considerando países que se
encontram apenas em um ponto e levando em conta apenas países conexos). Qual o número mínimo
de cores necessário para pintar qualquer mapa?

11
Teorema das Quatro Cores
Quatro cores são suficientes para colorir qualquer mapa no plano.

Definições

9 Grafo Dual de um Mapa: colocamos um vértice em cada região do mapa, e uma aresta entre dois
vértices que representem países adjacentes. Então o problema de coloração do mapa torna-se o
problema de coloração de vértices de um grafo dual de forma que não haja dois vértices adjacentes que
tenham a mesma cor.

9 Coloração: Uma coloração de (vértice) de um grafo é a atribuição de uma cor a cada vértice do grafo
de tal forma que dois vértices adjacentes não tenham a mesma cor.

9 Número Cromático: é o menor número de cores necessárias para se obter uma coloração.

O grafo dual de um mapa, da maneira que é construído será sempre simples, conexo e planar
Além disso qualquer grafo simples, conexo e planar pode ser entendido como o grafo dual de um mapa.
O teorema das quatro cores aplica-se apenas a grafos planares. O número cromático de K5, por
exemplo, que não é planar é 5.

17. Desenhe o grafo dual do mapa da figura abaixo

18. Desenhe um mapa para o qual o grafo da figura a seguir sirva como grafo dual

19. Encontre o número cromático de cada grafo

12

You might also like