UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos...

21
UFES Teoria dos Grafos Representação de Grafos

Transcript of UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos...

Page 1: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Representação de Grafos

Page 2: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Representação de Grafos

• Por diagrama: mais usual e mais fácil de visualização de aspectos topológicos– Percursos em grafos, adjacências, etc.

• Percepção de propriedades pode ser facilitada ou dificultada de acordo com o aspecto visual de um grafo– Isomorfismos, planaridade

• Representação visual: não adequada para o computador– Como armazenar a estrutura de um grafo?

Page 3: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Representações mais usuais

• Lista de adjacência ou dicionário– Simples– Lista de listas de vértices– Cada lista: formada por um vértice e seus

adjacentes– Adequada na representação de grafos

esparsos– Ineficiente na busca de uma aresta no grafo

Page 4: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Lista de adjacência - exemplo

1

2 3

4

1 2 4 •

1

2 4

1 3

3 •

4 •

3 •

2

1

3

4

a

e

b c

d

b c e •

a

a b

b

c •

d •

c •

b

a

c

d

e

d •

e •

a • c •

E se for um digrafo?

Page 5: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Lista de adjacência

• A lista associada a um vértice pode ser vazia.

• Em grafos não orientados, pode-se evitar a repetição na representação de arestas adotando-se algum critério de ordenação.

Page 6: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Matriz de Adjacência

• Seja G = (V,E)

• A = (aij), 1 ≤ i,j ≤ n

• aij = 1, quando {i,j} E

0, caso contrário

Page 7: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Matriz de Adjacência

a

e

b c

d

a b c d e

a 0 1 1 0 1

b 1 0 1 1 0

c 1 1 0 1 1

d 0 1 1 0 0

e 1 0 1 0 0

Page 8: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Matriz de Adjacência

Diagonal principal nula:

Matriz simétrica:

Número de 1´s na matriz = (grafo simples)

Valores nulos: ausência de arestas

Valores não nulos: presença de arestas ou arcos

grafos sem laços

grafo não orientado

2m

Page 9: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Matriz de Incidência

• Seja G = (V,E)

• B = (bkl), 1 ≤ k ≤ n, 1 ≤ l ≤ m

• bkl = 1, quando o vértice k é incidente à

aresta l

0, caso contrário

Page 10: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Matriz de Incidência

a

e

b c

d

{a,b} {a,c} {a,e} {b,c} {b,d} {c,d} {c,e}

a 1 1 1 0 0 0 0

b 1 0 0 1 1 0 0

c 0 1 0 1 0 1 1

d 0 0 0 0 1 1 0

e 0 0 1 0 0 0 1

Page 11: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Matriz de Incidência• Matriz esparsa de dimensão nxm• Exige muito espaço de armazenamento• Número de 1´s na matriz = 2m• Representa exatamente um grafo• Cada linha corresponde a um vértice• Cada coluna corresponde a uma aresta• Mais utilizada para representação de

hipergrafos e programação inteira envolvendo estruturas de grafos

Page 12: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Questão

• Qual das representações computacionais de um grafo é a mais adequada?

Page 13: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFESTeoria dos Grafos

Exercícios• Considere o grafo G e construa:

– sua lista de adjacência

– sua matriz A de adjacência

– sua matriz B de incidência

– Calcule:

• O produto A2. O que significam os números na diagonal?

• O produto B.Bt.O que significam os números na diagonal? E fora da diagonal?

• Existe relação entre a matriz de adjacência de um grafo G e a matriz de adjacência do seu grafo complementar G?

a

b c

d

Page 14: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFES

Percursos em um grafo

Page 15: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFES

Definição

• Um percurso ou cadeia é uma seqüência de arestas sucessivamente adjacentes, cada uma tendo uma extremidade adjacente à anterior e a outra a subsequente (à exceção da primeira e da última)– Percurso fechado: a última aresta da

sucessão é adjacente a primeira;– Percurso aberto: caso contrário

Page 16: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFES

Notação

• A sucessão é indicada por:– Vértices– Arestas– Vértices e arestas alternados

Page 17: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFES

Exemplo

e

G

a

b

c

d

Page 18: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFES

Comprimento de um percurso

• Número de arestas por ele utilizado (incluindo repetições)

• O que é o comprimento de um percurso em um grafo valorado?

Page 19: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFES

Tipos de percurso

• Simples: não repete arestas

• Elementar: não repete vértices nem arestas (caminho)

• Ciclo: percurso simples e fechado

• Ciclo elementar: só há repetição do último vértice

• Uma corda é uma aresta que une dois vértices não consecutivos de um ciclo

Page 20: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFES

Percurso abrangente

• Um percurso é abrangente a um dos conjuntos do grafo quando utiliza todos os elementos desse conjunto ao menos uma vez

• Euleriano

• Hamiltoniano

Page 21: UFES Teoria dos Grafos Representação de Grafos. UFES Teoria dos Grafos Representação de Grafos Por diagrama: mais usual e mais fácil de visualização de.

UFES

Exercícios• Indique percursos simples e não simples em G

1

• Indique percursos elementares em G2

• Todo percurso elementar é simples. Todo percurso simples é elementar? Explique.

• Indique um ciclo em G1 e um ciclo elementar em G

2

• Indique um caminho de comprimento 4 em G2 e um percurso de

comprimento 6 em G2

G2

a

b

G1

a

b c

d

e

ca b

d e 2