EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

10
LISTA DE GRAFOS 1. Construa um exemplo de grafo simples direcionado e um não direcionado. 2. Construa um grafo simples conexo, com as seguintes sequências de graus: (A) (1, 1, 2, 3, 3, 4, 4, 6) (B) (3, 3, 3, 3, 3, 5, 5, 5)

Transcript of EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

Page 1: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

LISTA DE GRAFOS

1. Construa um exemplo de grafo simples direcionado e um não direcionado.

2. Construa um grafo simples conexo, com as seguintes sequências de graus:

(A) (1, 1, 2, 3, 3, 4, 4, 6)

(B) (3, 3, 3, 3, 3, 5, 5, 5)

Page 2: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

3. Para o grafo a seguir, responda:

(A) é um grafo simples?

Como não laços nem arcos paralelos, o grafo é simples.

(B) é um grafo completo?

Grafo completo se para cada vértice do grafo existe uma aresta conectando este vértice a

cada um dos demais. Não é um grafo completo.

(C) é um grafo conexo?

Grafo conexo se possível estabelecer um caminho de qualquer vértice para qualquer outro

vértice. É um grafo conexo.

(D) existem dois caminhos entre os vértices 3 e 6?

Existem dois caminhos do vértice 3 para o 6 sem que as arestas sejam repetidas.

Caminho 1: 3, e, 5, f, 6 Caminho 2: 3, c, 4, d, 5, f, 6

(E) o grafo possui algum ciclo?

Ciclo em um grafo é um caminho de algum nó n para ele mesmo tal que nenhum arco

aparece mais de uma vez, a não ser ele mesmo nas extremidades. O grafo tem um ciclo de 3

para 3.

(F) o grafo possui algum arco cuja remoção o tornaria um grafo acíclico?

Possui sim. O arco e.

(G) o grafo possui algum arco cuja remoção o tornaria desconexo?

Sim. Removendo o arco “a” seria o suficiente para tornar o grafo desconexo.

Page 3: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

4. Esboce uma figura para cada um dos seguintes grafos:

(A) Um grafo simples com 3 vértices de grau 2.

Os vértices 4, 5 e 6 são de grau 2.

(B) Um grafo de 4 vértices, com ciclos de tamanho 1, 2, 3 e 4.

(C) Um grafo não completo com 4 vértices, de grau 4.

Page 4: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

5. Construa todos os grafos completos com até 8 vértices. Quantas arestas tem cada um

desses grafos? E se tiver n vértices?

Vértices arestas

2 1

3 3

4 6

5 10

6 15

7 21

8 28

A quantidade de aresta é dada pela formula da combinação 2 a 2.

Page 5: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

6. Explique porque é que a sequência ACEDBCA não é um circuito Hamiltoniano para o grafo a

seguir. Este grafo admite um circuito Hamiltoniano?

Circuito Hamiltoniano em Teoria dos Grafos é um caminho em um grafo não dirigido que

visita cada vértice apenas uma única vez. Essa sequência não é um circuito Hamiltoniano

porque o vértice C aparece duas vezes. Esse grafo admite sim um circuito Hamiltoniano:

ABCDE.

7. Um dígrafo admite ordenação topológica se e somente se for acíclico. Falso ou verdadeiro?

Justifique.

Uma ordenação topológica de um grafo G=(V,E) é uma ordenação linear de todos os vértices,

tal que se G contém uma aresta (u,v) então u aparece antes de v na ordenação. Se o grafo

não é acíclico então não é possível nenhuma ordenação linear. Ou seja, tendo um ciclo

poderia ocorrer que com uma aresta (u, v) pode-se ter outra aresta (v, u). Isso impossibilita

uma ordenação linear.

Há um processo chamado de relaxamento de aresta (u, v) que consiste em testar se

podemos melhorar o caminho mais curto para “v” encontrado até agora pela passagem

através de “u”. O caminho será mínimo se algoritmo tiver como otimizar os percursos

através do relaxamento. O algoritmo na questão ao conseguir encontrar um caminho

necessariamente não será mínimo.

Considerando que profundidade de saída seja o tempo de término em uma busca em

profundidade e ordem inversa sendo a ordem decrescente, temos sim uma ordenação

topológica. A ordenação topológica é depois da execução da busca em profundidade pois

precisa do tempo de termino. Assim é realizada a ordenação linear dos vértices.

Page 6: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

--------- A--------- B --------- A--------- B --------- C --------- A--------- B --------- C --------- D --------- A--------- B --------- E --------- A--------- F --------- A--------- G

--------- B--------- A --------- B--------- C --------- B--------- C --------- D --------- B--------- E --------- B--------- A --------- F --------- B--------- A --------- G

--------- C--------- B --------- A --------- C--------- B --------- C--------- D --------- C--------- B --------- E --------- C--------- B --------- A --------- F --------- C--------- B --------- A --------- G

Page 7: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

--------- D--------- C --------- B --------- A --------- D--------- C --------- B --------- D--------- C --------- D--------- E --------- D--------- E --------- F --------- D--------- E --------- F --------- G

--------- E--------- B --------- A --------- E--------- B --------- E--------- B --------- C --------- E--------- D --------- E--------- F --------- E--------- F --------- G

--------- F--------- A --------- F--------- A --------- B --------- F--------- A --------- B --------- C --------- F--------- E --------- D --------- F--------- E --------- F--------- G

--------- G--------- A --------- G--------- A --------- B --------- G--------- A --------- B --------- C --------- G--------- F --------- E --------- D --------- G--------- F --------- E --------- G--------- F

Page 8: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

i pi d f A NULL 1 14 B A 2 13 C B 3 12 D C 4 11 E D 5 10 F E 6 9 G F 7 8

PRIM ENLACES DE COMUNICAÇÃO

Nó origem Nó destino CUSTO

E

A 3,0 --------- E--------- D --------- A

B 3,5 --------- E--------- D --------- A --------- B

C 4 --------- E--------- D --------- A --------- C

D 1,5 --------- E--------- D

F 1 --------- E--------- F

G 1 --------- E--------- G

H 5 --------- E--------- F --------- H

I 6 --------- E--------- F --------- H --------- I

J 7 --------- E--------- F --------- H --------- I --------- J

Page 9: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

KRUSKAL ENLACES DE COMUNICAÇÃO

Nó origem Nó destino CUSTO

E

A 3,0 --------- E--------- D --------- A

B 3,5 --------- E--------- D --------- A --------- B

C 4 --------- E--------- D --------- A --------- C

D 1,5 --------- E--------- D

F 1 --------- E--------- F

G 1 --------- E--------- G

H 5 --------- E--------- F --------- H

I 6 --------- E--------- F --------- H --------- I

J 7 --------- E--------- F --------- H --------- I --------- J

OBS: RODANDO O GRAFO NOS DOIS ALGORITMOS AS RESPOSTA DERAM IGUAIS

arestas sombreadas: (A, B) (B, C) (E, D) (F, E) (A, F) (A, G)

arestas sombreadas: (A, B) (D, C) (E, D) (F, E) (A, F) (A, G)

Page 10: EXERCÍCIOS RESOLVIDOS - LISTA DE GRAFOS - ESTRUTURA DE DADOS

Na Técnica de ordenaçã topológica tem-se como resultado uma ordenação linear dos

vértices tal que se um grafo tem uma aresta (u,v) então u aparece antes de v. O grafo da

questão anterior é não direcionado portanto não é possível.

O algoritmo Bellman-Ford resolve o problema de caminhos mais curtos de uma única origem

no caso mais geral, no qual os pesos das arestas podem ser negativos. Este algoritmo retorna

um valor booleano indicando se existe ou não um ciclo de peso negativo acessível a partir da

origem. Se existir esse ciclo, o algoritmo alerta que não tem solução. Caso contrário o

algoritmo produz os caminhos mais curtos e seus pesos.