GRAFOS – Conceitos Básicos (Parte...

39
ALGORITMOS E ESTRUTURAS DE DADOS II GRAFOS – Conceitos Básicos (Parte 1) Gustavo Batista Profa. Elaine Parros Machado de Sousa alterações: Cris-na Dutra de Aguiar Ciferri Material baseado em aulas dos professores: Gustavo Ba5sta, Robson Cordeiro, Moacir Pon5 Jr. e Maria Cris5na Oliveira.

Transcript of GRAFOS – Conceitos Básicos (Parte...

Page 1: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

ALGORITMOS E ESTRUTURAS DE DADOS II

GRAFOS – Conceitos Básicos (Parte 1)

Gustavo Batista

Profa.ElaineParrosMachadodeSousaalterações:Cris-naDutradeAguiarCiferri

Materialbaseadoemaulasdosprofessores:GustavoBa5sta,RobsonCordeiro,MoacirPon5Jr.eMariaCris5naOliveira.

Page 2: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

MOTIVAÇÃO...¢ Comomodelarproblemasqueenvolvamconjuntosdeobjetoserelacionamentosentreparesdeobjetosestabelecidosporconexões?

¢ Exemplo–GoogleMaps�  comoirdacidadeAparacidadeB?�  quaisoscaminhospossíveis?�  qualocaminhomaiscurto?�  qualocaminhodemenorcusto?

Page 3: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

MOTIVAÇÃO...¢ Grafos

�  estruturasabstratasquemodelamobjetosearelação(conexão)entreeles

¢ TeoriadosGrafos�  áreadematemá5cacombinatóriavoltadaàresoluçãodeproblemasemcomputação

Page 4: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

MOTIVAÇÃO...¢ Muitasaplicaçõesemcomputaçãoprecisamconsiderarconjuntodeconexõesentreparesdeobjetos.

¢ Exemplos�  Existeumcaminhoparairdeumobjetoaoutroseguindoasconexões?

�  Qualéomenorcaminhoentredoisobjetos?�  Quantosoutrosobjetospodemseralcançadosapar5rdeumdeterminadoobjeto?

�  …

Page 5: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

MOTIVAÇÃO...¢ Exemplosdeproblemasprá5cosquepodemsermodeladoscomgrafos:�  Web

¢  ajudarmáquinasdebuscaalocalizarinformaçãorelevante.¢  documentosconectadosporlinks.

�  Mapas¢  descobriroroteiromaiscurtoparavisitarasprincipaiscidadesdeumaregiãoturís5ca.

¢  cidadesconectadasporestradas.

�  RedesSociais¢  descobrirpesquisadorescomomaiornúmerodecolaboradoresdeoutrospaíses

¢  pesquisadoresconectadosporprojetosdepesquisa.

Page 6: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

MOTIVAÇÃO...¢ Maisexemplosdeproblemasprá5cosquepodemsermodeladoscomgrafos:�  modelagemdecircuitoseletrônicos�  redesdetransporte�  redesdeenergia�  redesdecomputadores�  …

Page 7: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

EXEMPLOS

Page 8: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

EXEMPLOS

Page 9: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

EXEMPLOS

Page 10: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

OQUEÉUMGRAFO?¢ GrafoGdefinidocomoumpar(V,A):

�  V:conjuntodenóschamadosvér8ces(ounós).�  A:conjuntodeparesdevér5ceschamadosarestas(ouarcos).

¢ Exemplo:�  Redesocialdeamizade

¢ cadavér5ceéumapessoa.¢ existeumaarestaentreduaspessoasseesomenteseessaspessoassãoamigas.

Marcos José

João

Maria

Pedro

Page 11: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

GRAFOSOBREAMIZADE¢  Seeusouseuamigo,issosignificaquevocêémeuamigo?

�  Searesta(x,y)sempreimplicaem(y,x)=>grafonão-direcionado

�  Casocontrário=>grafodirecionado(oudígrafo).

¢  Eusouamigodemimmesmo?�  Aresta(x,x)=>laçoouself-loop.

¢  Eupossoserseuamigodiversasvezes?

�  relaçãomodeladacomarestasmúl8plasouparalelas.

Marcos José

João

Maria

Pedro

Page 12: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÃO–GRAFODIRECIONADO(Dígrafo)¢  Umgrafodirecionado(grafoorientadooudígrafo)Géumpar(V,A),

emque:�  Véumconjuntofinitodevér5ces�  Aéumconjuntodearestas

¢  relaçãobináriaordenadaemV

¢  Umaaresta(u,v)saidovér5ceu(origem)echeganovér5cev(des5no)

¢  Podemexis5rarestasdeumvér5ceparaelemesmo=>self-loops.¢  Podemexis5rarestascommesmaorigememesmodes5no=>arestas

múl8plas.

u v

Page 13: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

¢ G=(V,A)�  V=�  A=

¢ G=(V,A)�  V=�  A=

GRAFOSDIRECIONADOS(DÍGRAFOS)

1

4

2

5

3

6

1 2

Page 14: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

¢ G=(V,A)�  V={1,2,3,4,5,6}e�  A={(1,2),(1,4),(2,5),(4,2),(5,4),(3,5),(3,6),(3,6)}

¢ G=(V,A)�  V=(1,2)e�  A={(1,2),(2,2)}

GRAFOSDIRECIONADOS(DÍGRAFOS)

1

4

2

5

3

6

1 2

Page 15: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

v1 é adjacente a v2 ?

v1 e v2 são vizinhos ?

v2 é adjacente a v1 ?

GRAFOSDIRECIONADOSVÉRTICESADJACENTES¢  Emumgrafodirecionado,seexisteumaaresta(u,v)

�  ovér5cevéadjacenteaovér5ceu�  aarestasaidovér5ceu(origem)�  aarestacheganovér5cev(des5no)�  aexistênciade(u,v)nãoimplicanaexistênciade(v,u),ousejao

vér5ceunãoéadjacenteaovér5cev�  osvér5cesuevsãovizinhos

v1 v2

Page 16: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

v1 é adjacente a v2 ? NÃO

v1 e v2 são vizinhos ? SIM

v2 é adjacente a v1 ? SIM

GRAFOSDIRECIONADOSVÉRTICESADJACENTES¢  Emumgrafodirecionado,seexisteumaaresta(u,v)

�  ovér5cevéadjacenteaovér5ceu�  aarestasaidovér5ceu(origem)�  aarestacheganovér5cev(des5no)�  aexistênciade(u,v)nãoimplicanaexistênciade(v,u),ousejao

vér5ceunãoéadjacenteaovér5cev�  osvér5cesuevsãovizinhos

v1 v2

Page 17: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÃO–GRAFONÃODIRECIONADO¢ UmgrafonãodirecionadoGéumpar(V,A),emqueoconjuntodearestasAécons5tuídodeparesdevér5cesnãoordenados�  (u,v)e(v,u)sãoconsideradoscomoumaúnicaaresta�  arelaçãodeadjacênciaésimétrica�  self-loopsnãosãopermi5dos

1 2

4 3

¢ G = (V,A) �  V = �  A =

Page 18: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÃO–GRAFONÃODIRECIONADO¢ UmgrafonãodirecionadoGéumpar(V,A),emqueoconjuntodearestasAécons5tuídodeparesdevér5cesnãoordenados�  (u,v)e(v,u)sãoconsideradoscomoumaúnicaaresta�  arelaçãodeadjacênciaésimétrica�  self-loopsnãosãopermi5dos

1 2

4 3

¢ G = (V,A) �  V = {1, 2, 3, 4} �  A = {(1,2),(1,4),(2,4)}

grafo simples: não possui laços ou

arestas múltiplas

Page 19: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

GRAFOSNÃODIRECIONADOS¢ G=(V,A)

�  V=�  A=

¢ G=(V,A)�  V=�  A=

1

4

2

5

3

4

2

1

3

Page 20: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

GRAFOSNÃODIRECIONADOS¢ G=(V,A)

�  V={1,2,3,4,5}e�  A={(1,2),(1,4),(2,5),(4,2),(5,4),(3,5)}

¢ G=(V,A)�  V={1,2,3,4}e�  A={(1,2),(1,3),(1,4),(2,3),(2,4)}

1

4

2

5

3

4

2

1

3

Page 21: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

v3 é adjacente a v4 ?

v5 é adjacente a v4 ?

v4 é adjacente a v3 ?

GRAFOSNÃODIRECIONADOSVÉRTICESADJACENTES¢ Doisvér5cesuevdeumgrafonãodirecionadosãoadjacentes(ouvizinhos)quandoelesforemosextremosdeumamesmaaresta(u,v).

Page 22: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

v3 é adjacente a v4 ? SIM

v5 é adjacente a v4 ? NÃO

v4 é adjacente a v3 ? SIM

GRAFOSNÃODIRECIONADOSVÉRTICESADJACENTES¢ Doisvér5cesuevdeumgrafonãodirecionadosãoadjacentes(ouvizinhos)quandoelesforemosextremosdeumamesmaaresta(u,v).

A aresta (v3,v4) é dita incidente a v3 e a v4

Page 23: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

GRAFOSOBREAMIZADE¢ Oquantovocêémeuamigo?

�  Grafoponderado=>asarestaspossuemumpeso(valornumérico)associado.

�  Grafonãoponderado=>todasasarestaspossuemummesmopeso.

Marcos José

João

Maria

Pedro

Marcos José

João

Maria

Pedro

104

28 1

5

4arestas: triplas (u, v, valor)

arestas: duplas (u, v)

Page 24: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

GRAFOSOBREAMIZADE¢ Quempossuimais(oumenos)amigos?

�  Quan5dadederelacionamentos(conexões)�  Graudovér5ce=>númerodevér5cesadjacentesaele.�  Pessoamaispopulartemovér5cedemaiorgrau�  “Ermitões”sãovér5cesdegrauzero.

Marcos José

João

Maria

Pedro

vértice isolado: vértice de grau 0 vértice final: vértice de grau 1 vértice par: vértice com grau par vértice ímpar: vértice com grau ímpar

Page 25: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÃO–GRAUDOVÉRTICE¢ Ograudeumvér5ceemgrafosdirecionadosédadopor:

númerodearestasquesaemdele(graudesaídaouout-degree)númerodearestasquechegamnele(graudeentradaouin-degree).

�  Ex:vér5ce5tem:¢  graudeentrada=¢  graudesaída=¢  grau= 1

4

2

5

3

6

Page 26: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÃO–GRAUDOVÉRTICE¢ Ograudeumvér5ceemgrafosdirecionadosédadopor:

númerodearestasquesaemdele(graudesaídaouout-degree)númerodearestasquechegamnele(graudeentradaouin-degree).

�  Ex:vér5ce5tem:¢  graudeentrada=2¢  graudesaída=2¢  grau=4 1

4

2

5

3

6

Page 27: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÃO–GRAUDOVÉRTICE¢ Ograudeumvér5ceemgrafosnãodirecionadosédadopelonúmerodearestasqueincidemnele.�  umvér5cedegrauzeroéditoisoladoounãoconectado.

�  Ex.¢ graudovér5ce1:¢ graudovér5ce3:

1 2

4 3

5

6

Page 28: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÃO–GRAUDOVÉRTICE¢ Ograudeumvér5ceemgrafosnãodirecionadosédadopelonúmerodearestasqueincidemnele.�  umvér5cedegrauzeroéditoisoladoounãoconectado.

�  Ex.¢ graudovér5ce1:2¢ graudovér5ce3:0(isolado)

1 2

4 3

5

6

Page 29: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

GRAFOSOBREAMIZADE¢ Euestouligadoaumacelebridadeporumacadeiadeamigos?�  existeumcaminhoentremimeumacelebridade?�  caminho=>sequênciadearestasqueconectamdoisvér5ces.

Marcos José

João

Maria

Pedro

Eu Amigo 1 Amigo 2 James Hetfield Amigo 3

Page 30: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÕES-CAMINHO¢ Umcaminhodecomprimentokdeumvér5cexaumvér5ceyemumgrafoG=(V,A)éumasequênciadevér5ces(v0,v1,v2,...,vk)talque:�  x=v0�  y=vk�  e(vi-1,vi)∈Aparai=1,2,...,k.

¢ Ocomprimentodeumcaminhoéonúmerodearestasnele,istoé,ocaminhocontém:�  osvér5cesv0,v1,v2,...,vk�  asarestas(v0,v1),(v1,v2),...,(vk-1,vk).

caminho de k vértices: formado por k-1 arestas

Page 31: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÕES–CAMINHO¢  Seexis5rumcaminhocdexayentãoyéalcançávelapar5rdexviac.

¢  Caminhosimples=>todososvér5cesdocaminhosãodis5ntos.

¢  CaminhoHamiltoniano=>caminhoquepassaportodososvér5cesdeumgrafoexatamenteumavez

¢  Ex.: caminho(1,2,5,4)=>simples,comcomprimento3caminho(1,4,1,2)=>nãoésimples,comcomprimento3

1

4

2

5

3

6

Page 32: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

GRAFOSOBREAMIZADE¢ Quãopróximaéaminhaligaçãocomessacelebridade?�  Diversoscaminhosqueligamdoisvér5ces.�  Caminhomaiscurto(menorcaminho)

�  aquelecommenorsomadepesosdasarestas(ponderado)�  oucommenornúmerodearestas(nãoponderado).

�  Caminhomaislongo�  aquelecommaiorsomadepesosdasarestas(ponderado)�  oucommaiornúmerodearestas(nãoponderado).

Marcos José

João

Maria

Pedro

Amigo 4

Eu Amigo 1 Amigo 2 James

Hetfield Amigo 3

Page 33: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

¢ Quantotempodemoraparaqueeuouçaumafofocaquecontei?

�  Ciclo=>caminhonoqualoprimeiroeoúl5movér5cessãoiguais.

�  Ciclosimples=>cicloemquenenhumvér5ceserepete(excetoprimeiroeúl5mo).

�  Grafocíclico=>possuipelomenosumciclo.�  Grafoacíclico=>grafosemciclos.

GRAFOSOBREAMIZADE

Marcos José

João

Maria

Pedro

Page 34: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÕES-CICLO¢ Emumgrafodirecionado:

�  Umcaminho(v0,v1,...,vk)formaumciclosev0=vkeocaminhocontémpelomenosumaaresta.¢ ex:(1,2,5,4,1)

�  Ocicloésimplesseosvér5cesv1,v2,...,vksãodis5ntos.

�  Oself-loopéumciclodetamanho1.¢  Ex:(5,5)

1

4

2

5

Page 35: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÕES-CICLO

¢ Emumgrafodirecionado:�  Doiscaminhos(v0,v1,...,vk)e(v’0,v’1,...,v’k)formamo

mesmocicloseexis5ruminteirojtalquev’i=v(i+j)modk

parai=0,1,...,k-1.

�  Ex.:caminhosqueformamomesmociclo:¢  (2,5,4,2)

¢  (5,4,2,5)

¢  (4,2,5,4).

1

4

2

5

3

6

Page 36: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

DEFINIÇÕES-CICLO¢ Emumgrafonãodirecionado:

�  Umcaminho(v0,v1,...,vk)formaumciclosev0=vkeocaminhocontémpelomenostrêsarestas.¢ ex:(1,2,4,1)

�  Ocicloésimplesseosvér5cesv1,v2,...,vksãodis5ntos.

1 2

4 3

5

6

Page 37: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

(a) é cíclico ?

(c) é cíclico ?

(b) é cíclico ?

EXEMPLOS

(b) (c) (a)

(d)

(d) é cíclico ?

Page 38: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

(a) é cíclico ? SIM

(c) é cíclico ? SIM

(b) é cíclico ? SIM

EXEMPLOS

(b) (c) (a)

(d)

(d) é cíclico ? NÃO

Page 39: GRAFOS – Conceitos Básicos (Parte 1)wiki.icmc.usp.br/images/f/fa/SCC0603022016GrafosConceitosBasicos.pdf · ¢ Eu sou amigo de mim mesmo? Aresta (x,x) => laço ou self-loop. ¢

BIBLIOGRAFIA¢ N.Ziviani.ProjetodeAlgoritmos,Thomson,2a.Edição,2004.

¢ Y.Langsam,M.J.AugensteinandA.M.Tenenbaum.DataStructuresUsingCandC++,Pren5ceHall,2aEdição,1996.

¢ T.H.Cormen.C.E.LeisersonandR.L.Rivest,Introduc5ontoAlgorithms,MITPress,2ndEdi5on,2001.