teoria dos grafos
Download
Skip this Video
Download Presentation
Teoria dos Grafos

Loading in 2 Seconds...

play fullscreen
1 / 101

Teoria dos Grafos - PowerPoint PPT Presentation


  • 344 Views
  • Uploaded on

Teoria dos Grafos. Profª Loana Tito Nogueira. Bibliografia. 1. J. L. Szwarcfiter. Grafos e Algoritmos Computacionais. Editora Campus. 1988 2. P. O Boaventura Neto. Grafos: Teoria, Modelos, Algoritmos. Editora Edgard Blücher Ltda, 1996.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Teoria dos Grafos' - stamos


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
teoria dos grafos

Teoria dos Grafos

Profª Loana Tito Nogueira

bibliografia
Bibliografia

1. J. L. Szwarcfiter. Grafos e Algoritmos Computacionais.

Editora Campus. 1988

2. P. O Boaventura Neto. Grafos: Teoria, Modelos, Algoritmos.

Editora Edgard Blücher Ltda, 1996.

3. F. Harary. Graph Theory, Perseus, 1969.

4. J. A Bondy, U. S. R. Murty. Graph Theory with applications.

Elsevier, 1976.

bibliografia3
Bibliografia

1. J. L. Szwarcfiter. Grafos e Algoritmos Computacionais.

Editora Campus. 1988

2. P. O Boaventura Neto. Grafos: Teoria, Modelos, Algoritmos.

Editora Edgard Blücher Ltda, 1996.

3. F. Harary. Graph Theory, Perseus, 1969.

4. J. A Bondy, U. S. R. Murty. Graph Theory with applications.

Elsevier, 1976.

motiva o5
Motivação
  • Por que estudar grafos?
    • Importante ferramenta matemática com aplicação em diversas áreas do conhecimento
    • Utilizados na definição e/ou resolução de problemas

Existem centenas de problemas computacionais que empregam grafos com sucesso.

motiva o6
Motivação
  • Por que estudar grafos?
    • Importante ferramenta matemática com aplicação em diversas áreas do conhecimento
    • Utilizados na definição e/ou resolução de problemas
    • Existem centenas de problemas computacionais que empregam grafos com sucesso.
motiva o7
Motivação
  • Por que estudar grafos?
    • Importante ferramenta matemática com aplicação em diversas áreas do conhecimento
    • Utilizados na definição e/ou resolução de problemas
    • Existem centenas de problemas computacionais que empregam grafos com sucesso.
motiva o8
Motivação
  • Por que estudar grafos?
    • Importante ferramenta matemática com aplicação em diversas áreas do conhecimento
    • Utilizados na definição e/ou resolução de problemas
    • Existem centenas de problemas computacionais que empregam grafos com sucesso.
motiva o9
Motivação
  • Por que estudar grafos?
    • Importante ferramenta matemática com aplicação em diversas áreas do conhecimento
    • Utilizados na definição e/ou resolução de problemas
    • Existem centenas de problemas computacionais que empregam grafos com sucesso.
as pontes de k nigsberg11
As pontes de Königsberg

Em Königsber, Alemanha, um rio que passava pela

Cidade tinha uma ilha e, logo depois de passar por

essa ilha se bifurcava em 2 ramos. Nessa região

existiam 7 pontes, como mostra a figura.

as pontes de k nigsberg12
As pontes de Königsberg

Em Königsber, Alemanha, um rio que passava pela

Cidade tinha uma ilha e, logo depois de passar por

essa ilha se bifurcava em 2 ramos. Nessa região

existiam 7 pontes, como mostra a figura.

as pontes de k nigsberg13
As pontes de Königsberg

É possível andar por toda a cidade de tal

modo que cada ponte seja atravessada

exatamente uma vez?

as pontes de k nigsberg14
As pontes de Königsberg

Não é possível !!!!!

remodelando o problema19
Remodelando o problema

O problema agora consiste em percorrer todos os arcos,

passando por cada um apenas uma vez, sem

levantar o lápis do papel.

teoria de grafos
Teoria de Grafos

Na teoria de grafos, um caminho completo com as propriedades descritas acima de não retraçar nenhum arco é chamado de TRAJETÓRIA de EULER

outro exemplo
Outro Exemplo:

Será que existe alguma trajetória de Euler para o

gráfico ao lado? Se existir, como ela é?

ementa do curso
Ementa do Curso
  • Grafos e Subgrafos
  • Árvores
  • Conectividade
  • Ciclo Hamiltoniano e Caminho Euleriano
  • Emparelhamento
  • Coloração de Arestas
  • Conjuntos Independentes e Cliques
  • Coloração de Vértices
  • Grafos Planares
  • Grafos Direcionados
avalia o
Avaliação:
  • Listas de Exercícios
  • 2 Avaliações: PR1 e PR2
  • Trabalho (Alunos de Doutorado)

PR1: 24/05

PR2: 17/07

Final: 19/07

grafos e subgrafos27
Grafos e Subgrafos

grafos e subgrafos28
Grafos e Subgrafos

grafos e subgrafos29
Grafos e Subgrafos

grafos e subgrafos30
Grafos e Subgrafos

grafos e subgrafos31
Grafos e Subgrafos

defini o
Definição

G=(V(G), E(G), G)

defini o33
Definição

G=(V(G), E(G), G)

Conjunto não vazio

de vértices

defini o34
Definição

G=(V(G), E(G), G)

Conjunto não vazio

de vértices

Conjunto disjunto de V(G),

chamado arestas

defini o35
Definição

G=(V(G), E(G), G)

Conjunto não vazio

de vértices

Função que associa

cada aresta de G um par

de vértices de G

Conjunto disjunto de V(G),

chamado arestas

defini o36
Definição

G=(V(G), E(G), G)

Conjunto não vazio

de vértices

Função que associa

cada aresta de G um par

de vértices de G

Conjunto disjunto de V(G),

chamado arestas

Se e=(u,v) então dizemos que e une u e v

(u e v são ditos extremos de e)

exemplo 1
Exemplo1:
  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)
exemplo 138

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 139

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 140

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 141

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 142

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 143

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 144

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 145

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 146

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5), G(e8)= (v2, v5)

v4

v5

exemplo 147

G

v2

Exemplo1:

v1

v3

  • G=(V(G), E(G), G), onde
    • V(G) ={v1, v2, v3, v4, v5}
    • E(G)={e1, e2, e3, e4, e5, e6, e7 , e8}
    • G :
      • G(e1)= (v1, v2), G(e2)= (v2, v3),
      • G(e3)= (v3, v3), G(e4)= (v3, v4),
      • G(e5)= (v2, v4), G(e6)= (v4, v5),
      • G(e7)= (v2, v5),G(e8)= (v2, v5)

v4

v5

exemplo 2
Exemplo2:
  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)
exemplo 249
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 250
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 251
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 252
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 253
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 254
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 255
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 256
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 257
Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

exemplo 258

H

Exemplo2:

u

v

y

x

  • H=(V(H), E(H), H), onde
    • V(H) ={u, v, w, x, y}
    • E(H)={a, b, c, d, e, f, g, h}
    • G :
      • G(a)= (u, v), G(b)= (u, u),
      • G(c)= (v, w), G(d)= (w, x),
      • G(e)= (v, x), G(f)= (w, x),
      • G(g)= (u, x), G(h)= (x, y)

w

observa es60
Observações
  • Grafos são assim chamados por poderem ser representados graficamente
observa es61
Observações
  • Grafos são assim chamados por poderem ser representados graficamente
  • Existe uma única maneira de desenhar um grafo?
observa es62
Observações
  • Duas arestas num diagrama de um grafo podem se interceptar num ponto que não é um vértice
observa es63
Observações
  • Duas arestas num diagrama de um grafo podem se interceptar num ponto que não é um vértice

Grafos que possuem uma representação em que

as aresta se interceptem apenas em seus extremos

são chamados planares

defini es e conceitos65
Definições e Conceitos
  • Os extremos de uma aresta são ditos incidentes com a aresta, e vice-versa.
defini es e conceitos66
Definições e Conceitos
  • Os extremos de uma aresta são ditos incidentes com a aresta, e vice-versa.

Ex.:

e

u

v

defini es e conceitos67
Definições e Conceitos
  • Os extremos de uma aresta são ditos incidentes com a aresta, e vice-versa.

Ex.:

u e v são incidentes a e

e

u

v

defini es e conceitos68
Definições e Conceitos
  • Os extremos de uma aresta são ditos incidentes com a aresta, e vice-versa.

Ex.:

u e v são incidentes a e

(e é incidente a u e a v)

e

u

v

defini es e conceitos69
Definições e Conceitos
  • Dois vértices que são incidentes a uma mesma aresta são ditos adjacentes.
defini es e conceitos70
Definições e Conceitos
  • Dois vértices que são incidentes a uma mesma aresta são ditos adjacentes.

Ex.:

e

u

v

defini es e conceitos71
Definições e Conceitos
  • Dois vértices que são incidentes a uma mesma aresta são ditos adjacentes.

Ex.:

u e v são adjacentes

e

u

v

defini es e conceitos72
Definições e Conceitos
  • Dois vértices que são incidentes a uma mesma aresta são ditos adjacentes.

Ex.:

u e v são adjacentes

e e e´são adjacentes

e

u

v

e

u

defini es e conceitos73
Definições e Conceitos
  • Loop: uma aresta com extremos idênticos

u

defini es e conceitos74
Definições e Conceitos
  • Loop: uma aresta com extremos idênticos
  • Link: aresta com extremos diferentes

u

e

u

v

defini es e conceitos75
Definições e Conceitos
  • Aresta Múltipla: links com mesmos extremos

e

u

v

defini es e conceitos76
Definições e Conceitos
  • Um grafo é finito se V(G) e E(G) são finitos
defini es e conceitos77
Definições e Conceitos
  • Um grafo é finito se V(G) e E(G) são finitos
    • Estudaremos apenas grafos finitos.
defini es e conceitos78
Definições e Conceitos
  • Um grafo é finito se V(G) e E(G) são finitos
    • Estudaremos apenas grafos finitos.
  • Grafos com apenas um vértice são ditos triviais.
defini es e conceitos79
Definições e Conceitos
  • Um grafo é finito se V(G) e E(G) são finitos
    • Estudaremos apenas grafos finitos.
  • Grafos com apenas um vértice são ditos triviais.
  • Um grafo é simples se não possuir loops e arestas múltiplas.
nota o
Notação
  • G: Grafo com conjunto de vértices V(G) e conjunto de arestas E(G).
  • n: número de vértices de G
  • m: número de arestas de G
exerc cio
Exercício:
  • 1. Mostre que se G é um grafo simples, então

m 

( )

n

2

isomorfismo entre grafos83
Isomorfismo entre Grafos
  • Dois grafos G e H são idênticos se
    • V(G)=V(H);
    • E(G)=E(H);
    • G= H
isomorfismo entre grafos84
Isomorfismo entre Grafos
  • Dois grafos G e H são idênticos se
    • V(G)=V(H);
    • E(G)=E(H);
    • G= H

Grafos idênticos podem ser representados por um mesmo diagrama

isomorfismo entre grafos85
Isomorfismo entre Grafos
  • Um isomorfismo entre dois grafos é uma bijeção f de V(G) em V(H) tal que
isomorfismo entre grafos86
Isomorfismo entre Grafos
  • Um isomorfismo entre dois grafos é uma bijeção f de V(G) em V(H) tal que

(u,v)  V(G) (f(u),f(v))  V(H)

isomorfismo entre grafos87
Isomorfismo entre Grafos
  • Um isomorfismo entre dois grafos é uma bijeção f de V(G) em V(H) tal que

(u,v)  V(G) (f(u),f(v))  V(H)

  • É possível alterar o nome dos vértices de um deles de forma que fiquem iguais.
exemplo g h

u

v

y

x

w

Exemplo: G  H ?

G

H

v2

v1

v3

v4

v5

exemplo g h89

u

v

y

x

w

Exemplo: G  H ?

G

H

v2

v1

v3

v4

v5

Para mostrar que dois grafos são isomorfos,

devemos indicar um isomorfismo entre eles.

classes especiais de grafos91
Classes especiais de grafos
  • Grafo Completo: grafo simples em que cada par de vértices distintos possui um aresta.
classes especiais de grafos92
Classes especiais de grafos
  • Grafo Completo: grafo simples em que cada par de vértices distintos possui um aresta.

A menos de isomorfismo, existe apenas um grafo

completo com n vértices, denotado por Kn

classes especiais de grafos93
Classes especiais de grafos
  • Grafo Vazio: é um grafo sem arestas.
classes especiais de grafos94
Classes especiais de grafos
  • Grafo Bipartido: é aquele em que o conjunto de vértices pode ser particionado em dois subconjuntos X e Y, tal que cada aresta tem um extremo em X e um em Y.
classes especiais de grafos95
Classes especiais de grafos
  • Grafo Bipartido: é aquele em que o conjunto de vértices pode ser particionado em dois subconjuntos X e Y, tal que cada aresta tem um extremo em X e um em Y.

Y

X

classes especiais de grafos96
Classes especiais de grafos
  • Grafo Bipartido: é aquele em que o conjunto de vértices pode ser particionado em dois subconjuntos X e Y, tal que cada aresta tem um extremo em X e um em Y.

Y

X

classes especiais de grafos97
Classes especiais de grafos
  • Grafo Bipartido: é aquele em que o conjunto de vértices pode ser particionado em dois subconjuntos X e Y, tal que cada aresta tem um extremo em X e um em Y.

Y

X

classes especiais de grafos98
Classes especiais de grafos
  • Grafo Bipartido: é aquele em que o conjunto de vértices pode ser particionado em dois subconjuntos X e Y, tal que cada aresta tem um extremo em X e um em Y.

Y

X

(X, Y) é um bipartição

do grafo

classes especiais de grafos99
Classes especiais de grafos
  • Grafo Bipartido Completo: é um grafo bipartido com bipartição (X, Y) em que cada vértice de X é adjacente a cada vértice de Y.
  • Se |X|=m e |Y|=n, então denotamos tal grafo por Km,n
exerc cios
Exercícios

1. Mostre que os seguintes grafos não são isomorfos:

H

G

exerc cios101
Exercícios

2. Mostre que m(Km,n) = mn.

3. Se G é simples e bipartido, então

m  n2/4 (m: #arestas, n: #vértices)

ad