INF 1010 Estruturas de Dados Avançadas
|
|
- Juliana Aveiro
- 5 Há anos
- Visualizações:
Transcrição
1 INF Estruturas de Dados Avançadas Grafos // DI, PUC-Rio Estruturas de Dados Avançadas.
2 Aplicações de grafos grafo vértices arestas Cronograma tarefas restrições de preferência Malha viária interseções de ruas ruas Rede de água (telefônica, ) Redes de computadores Edificações (telefones, ) computadores Canos (cabos, ) linhas Software funções chamadas de função Web páginas Web links Redes Sociais pessoas relacionamentos // DI, PUC-Rio Estruturas de Dados Avançadas.
3 Grafos... não são estruturas de dados, e sim estruturas matemáticas que implementamos com estruturas de dados // DI, PUC-Rio Estruturas de Dados Avançadas.
4 Grafo não dirigido Um grafo não dirigido é um par G = (V,E), onde V é um conjunto de nós ou vértices e E é um conjunto de arestas uma aresta é um conjunto de vértices Exemplos vértices: V = {,,,} arestas: E = {{,},{,},{,},{,},{,},{,}} vértices : V = {,,,,,,} arestas: E = {{,},{,},{,},{,},{,},{,}} // DI, PUC-Rio Estruturas de Dados Avançadas.
5 Grafo dirigido (orientado, ou Digrafo) Um grafo dirigido é um par G = (V,E), onde V é um conjunto de n nós ou vértices e E é um conjunto de m arcos um arco é um par ordenado de vértices Exemplo vértices: V = {,,} arcos: E = {(,), (,), (,)} // DI, PUC-Rio Estruturas de Dados Avançadas.
6 Grafo dirigido (orientado, ou digrafo) Exemplo - Digrafo com auto-arco vértices: V = {,,,} arcos: E = {(,), (,), (,), (,), (,)} // DI, PUC-Rio Estruturas de Dados Avançadas.
7 Grafo ponderado Um grafo ponderado é uma tripla G = (V,E,p), onde V é um conjunto de n nós ou vértices e E é um conjunto de m arcos p é uma função que atribui a cada arco um peso Exemplo // DI, PUC-Rio Estruturas de Dados Avançadas. 7
8 Multigrafo Um multigrafo é um grafo onde dois nós podem estar conectados por mais de uma aresta Exemplo // DI, PUC-Rio Estruturas de Dados Avançadas. 8
9 Vértices adjacentes Vértices conectados por arestas 7 e e e e e e e 7 // DI, PUC-Rio Estruturas de Dados Avançadas. 9
10 Subgrafo G alguns subgrafos de G // DI, PUC-Rio Estruturas de Dados Avançadas.
11 Subgrafo G alguns subgrafos de G // DI, PUC-Rio Estruturas de Dados Avançadas.
12 Grafo completo Um grafo não direcionado é completo sse cada vértice está conectado a cada um dos outros vértices por uma aresta Quantas arestas há em um grafo completo de n vértices? // DI, PUC-Rio Estruturas de Dados Avançadas.
13 Grafo completo Um grafo não direcionado é completo sse cada vértice está conectado a cada um dos outros vértices por uma aresta Quantas arestas há em um grafo completo de n vértices? n (n-)/ // DI, PUC-Rio Estruturas de Dados Avançadas.
14 Grafo conectado Um grafo não direcionado é conectado sse existe um caminho entre quaisquer dois vértices Componente conexa de um grafo G H H 7 // DI, PUC-Rio Estruturas de Dados Avançadas.
15 Grau Um vértice possui grau n sse há exatamente n arestas incidentes ao vértice Exemplo: Exemplo: grau do vértice : grau de entrada do vértice : grau de saída do vértice : Problema das pontes de Königsberg G Só há solução se o grau de cada vértice for par // DI, PUC-Rio Estruturas de Dados Avançadas.
16 Caminhos e ciclos Caminho de comprimento entre A e C de comprimento entre B e G, passando por H de comprimento entre B e G, passando por F de comprimento de A a F H B G C E F A D // DI, PUC-Rio Estruturas de Dados Avançadas.
17 Ciclos Um ciclo é um caminho de um nó para ele mesmo exemplo: B-F-G-B H Grafo cíclico B G C contém um ou mais ciclos Grafo acíclico E F A D não contém ciclos // DI, PUC-Rio Estruturas de Dados Avançadas. 7
18 Representações de grafo Matriz de adjacências Listas de adjacências (incidências) // DI, PUC-Rio Estruturas de Dados Avançadas. 8
19 Matriz de adjacências mat[i][j] =, se houver uma aresta do nó i para o nó j, caso contrário G // DI, PUC-Rio Estruturas de Dados Avançadas. 9
20 Matriz de adjacências G // DI, PUC-Rio Estruturas de Dados Avançadas.
21 Matriz de adjacências G // DI, PUC-Rio Estruturas de Dados Avançadas.
22 Matriz de adjacências G H H // DI, PUC-Rio Estruturas de Dados Avançadas.
23 Percursos em grafos em profundidade (depth-first search) arestas que partem do vértice visitado por último em largura (breadth-first search) arestas que partem do vértice visitado primeiro guloso (greedy) arestas de menor custo, menor caminho // DI, PUC-Rio Estruturas de Dados Avançadas.
24 Percursos em grafos Cada vértice examinado deve ser marcado como visitado Por quê? // DI, PUC-Rio Estruturas de Dados Avançadas.
25 Percurso em largura breadth first search // DI, PUC-Rio Estruturas de Dados Avançadas.
26 dfs iniciando em dfs() dfs() dfs() dfs() dfs() dfs() dfs() 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
27 bfs iniciando em bfs() -> enfileira, [,] bfs() -> enfileira, [,,] bfs() -> enfileira [,,] bfs() [,] bfs() -> enfileira [,] bfs() [] bfs() [] 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas. 7
28 algoritmos em grafos até agora não usamos os pesos das arestas para nada 8 8
29 problemas comuns caminhos mais curtos árvores geradoras 8 8
30 problemas comuns caminho mais curto caminho entre nós I e j com menor peso total de arcos 8 8
31 problemas comuns caminho mais curto caminho entre nós I e j com menor peso total de arcos 8 8
32 Algoritmo de Dijkstra Algoritmo de Dijkstra Entradas: Saída: Um grafo ponderado G = (V,E,p) Um vértice V do grafo Menor caminho entre V e cada um dos nós do grafo // DI, PUC-Rio Estruturas de Dados Avançadas.
33 8 8
34 8 8 8
35 8 8 8
36
37
38
39
40
41 não tem vizinhos não visitados!
42 não tem vizinhos não visitados!
43 Algoritmo de Dijkstra Algoritmo de Dijkstra /* Menor caminho entre um nó de origem e um de destino */.Defina o nó de origem.atribua a todos os nós um valor de distância ao nó de origem: valor zero ao nó de origem, e infinito para todos os outros nós..marque todos os demais nós como não visitados e o nó origem como corrente (A)..Considere a distância de todos os nós vizinhos não visitados ao nó corrente e calcule uma distância deles ao nó origem através do nó corrente.. Por exemplo, se o nó atual A tiver distância e houver uma aresta de peso conectando-o com um outro nó B, a distância de B através de A será 8.. Se essa distância for menor do que a distância registrada anteriormente (infinito, na primeira rodada; zero para o nó de origem), sobrescreva a distância de B. Ao final, tem-se a menor distância entre o nó de origem e cada um dos nós do grafo. // DI, PUC-Rio Estruturas de Dados Avançadas.
44 Algoritmo de Dijkstra Algoritmo de Dijkstra /* Menor caminho entre um nó de origem e um de destino */.Defina o nó de origem.atribua a todos os nós um valor de distância ao nó de origem: valor zero ao nó de origem, e infinito para todos os outros nós..marque todos os demais nós como não visitados e o nó origem como corrente (A)..Considere a distância de todos os nós vizinhos não visitados ao nó corrente e calcule uma distância deles ao nó origem através do nó corrente.. Por exemplo, se o nó atual A tiver distância e houver uma aresta de peso conectando-o com um outro nó B, a distância de B através de A será 8.. Se essa distância for menor do que a distância registrada anteriormente (infinito, na primeira rodada; zero para o nó de origem), sobrescreva a distância de B..Ao terminar de considerar todos os vizinhos do nó atual A, marque-o como visitado. Um nó visitado não será mais verificado; sua distância registrada agora é final e mínima..se todos os nós tiverem sido visitados, termine. Caso contrário, marque o nó não visitado com a menor distância (ao nó de origem) como o próximo "nó corrente", e repita a partir do passo. Ao final, tem-se a menor distância entre o nó de origem e cada um dos nós do grafo. // DI, PUC-Rio Estruturas de Dados Avançadas.
45 Algoritmo de Dijkstra Complexidade temporal: Depende da implementação do conjunto de vértices Q // DI, PUC-Rio Estruturas de Dados Avançadas.
46 Dijkstra - exemplo Vértice inicial: dist arcs vertex weight link []-> 8 8 []-> []-> []-> []-> []-> []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
47 Dijkstra - exemplo Modifica distâncias dos vértices e dist arcs vertex weight link []-> 8 8 []-> 8 []-> []-> []-> []-> []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas. 7
48 Dijkstra - exemplo Marca o vértice como visitado Seleciona o vértice (vértice não visitado de menor distância à origem) Ignora vértice (já visitado) e modifica distância do vértice 8 8 []-> []-> 8 []-> []-> []-> []-> dist arcs vertex weight link []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas. 8
49 Dijkstra - exemplo Marca o vértice como visitado Seleciona o vértice (vértice não visitado de menor distância à origem) Ignora vértice e modifica distâncias dos vértices e 8 8 []-> []-> 8 []-> []-> []-> []-> dist arcs vertex weight link []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas. 9
50 Dijkstra - exemplo Marca o vértice como visitado Seleciona o vértice (vértice não visitado de menor distância à origem) Modifica distância do vértice ; ignora vértice ; mantém a distância do vértice 8 8 []-> []-> 8 []-> []-> 7 []-> []-> dist arcs vertex weight link []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
51 Dijkstra - exemplo Marca o vértice como visitado Seleciona o vértice (vértice não visitado de menor distância à origem) Ignora vértice ; mantém distância do vértice ; ignora vértice 8 8 []-> []-> 8 []-> []-> 7 []-> []-> dist arcs vertex weight link []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
52 Dijkstra - exemplo Marca o vértice como visitado Seleciona o vértice (vértice não visitado de menor distância à origem) ignora vértice ; modifica distância do vértice 8 8 []-> []-> 8 []-> []-> []-> []-> dist arcs vertex weight link []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
53 Dijkstra - exemplo Marca o vértice como visitado seleciona o vértice (vértice não visitado de menor distância à origem) Ignora vértices, e 8 8 []-> []-> 8 []-> []-> []-> []-> dist arcs vertex weight link []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
54 Dijkstra - exemplo Marca o vértice como visitado Não há mais vértices não visitados FIM! 8 8 []-> []-> 8 []-> []-> []-> []-> dist arcs vertex weight link []-> 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
55 problemas comuns árvores geradoras já vimos um exemplo em lab mas agora queremos a de custo mínimo 8 8
56 problemas comuns árvores geradora: subgrafo que é árvore e que contém todos os vértices grafo conexo sem circuitos 8 8
57 Algoritmo de Kruskal Árvore geradora de custo mínimo Dado um grafo ponderado G = (V,E,p), uma árvore geradora de custo mínimo para G é uma árvore tal que: V é o conjunto de nós da árvore A soma dos pesos das arestas é minima (entre as árvores geradoras) // DI, PUC-Rio Estruturas de Dados Avançadas. 7
58 Algoritmo de Kruskal Algoritmo de Kruskal Entrada: Um grafo ponderado G = (V,E,p) Saída: Árvore geradora de custo mínimo. Considere cada nó em V como uma árvore separada (formando uma floresta). Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados. // DI, PUC-Rio Estruturas de Dados Avançadas. 8
59 Algoritmo de Kruskal. Considere cada nó como uma árvore separada (formando uma floresta) 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas. 9
60 Algoritmo de Kruskal. Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados. 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
61 Algoritmo de Kruskal. Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados. 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
62 Algoritmo de Kruskal. Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados. 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
63 Algoritmo de Kruskal. Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados. 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
64 Algoritmo de Kruskal. Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados // DI, PUC-Rio Estruturas de Dados Avançadas.
65 Algoritmo de Kruskal. Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados. 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
66 Algoritmo de Kruskal. Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados. 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas.
67 Algoritmo de Kruskal. Examine a aresta de menor custo. Se ela unir duas árvores na floresta, inclua-a.. Repita o Passo () até todos os nós estarem conectados. 8 8 // DI, PUC-Rio Estruturas de Dados Avançadas. 7
INF 1010 Estruturas de Dados Avançadas
INF Estruturas de Dados Avançadas Grafos //8 DI, PUC-Rio Estruturas de Dados Avançadas. Primeiro uso conhecido 7 Euler: pontes de Königsberg //8 DI, PUC-Rio Estruturas de Dados Avançadas. Primeiro uso
Leia maisTeoria dos Grafos Aula 5
Teoria dos Grafos Aula Aula passada Explorando grafos Mecanismos genéricos Ideias sobre BFS, DFS Aula de hoje Busca em grafos Busca em largura (BFS Breadth First Search) Propriedades Busca em Grafos Problema
Leia maisGrafos Parte 1. Aleardo Manacero Jr.
Grafos Parte 1 Aleardo Manacero Jr. Uma breve introdução Grafos são estruturas bastante versáteis para a representação de diversas formas de sistemas e/ou problemas Na realidade, árvores e listas podem
Leia maisEstrutura de Dados e Algoritmos e Programação e Computadores II. Aula 10: Introdução aos Grafos
Estrutura de Dados e Algoritmos e Programação e Computadores II Aula 10: Introdução aos Grafos História O assunto que se constitui no marco inicial da teoria de grafos é na realidade um problema algorítmico.
Leia maisTeoria dos Grafos Aula 6
Teoria dos Grafos Aula 6 Aula passada Busca em grafos Busca em largura (BFS Breadth First Search) Propriedades Aula de hoje BFS implementação Complexidade Busca em profundidade (DFS) Conectividade, componentes
Leia maisEstruturas de Dados Grafos
Estruturas de Dados Grafos Prof. Eduardo Alchieri (introdução) Grafo é um conjunto de pontos e linhas que conectam vários pontos Formalmente, um grafo G(V,A) é definido pelo par de conjuntos V e A, onde:
Leia maisBCC402 Algoritmos e Programação Avançada. Prof. Marco Antonio M. Carvalho Prof. Túlio Toffolo 2012/1
BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Toffolo 2012/1 Definições e Estruturas de Grafos Representações; Percursos Busca em Largura; Busca em Profundidade.
Leia maisGrafos - Introdução. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Grafos - Introdução 2014/ / 32
Grafos - Introdução Pedro Ribeiro DCC/FCUP 2014/2015 Pedro Ribeiro (DCC/FCUP) Grafos - Introdução 2014/2015 1 / 32 Conceito Definição de Grafo Formalmente, um grafo é: Um conjunto de nós/vértices (V).
Leia maisINF 1010 Estruturas de Dados Avançadas
INF Estruturas de Dados Avançadas Grafos // DI, PUC-Rio Estruturas de Dados Avançadas. Algoritmo de Dijkstra 8 8 Algoritmo de Dijkstra 8 8 8 Algoritmo de Dijkstra 8 8 8 Algoritmo de Dijkstra 8 8 8 8 8
Leia maisTeoria dos Grafos. Teoria dos Grafos. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG. agosto
Teoria dos Grafos Introdução Profa. Sheila Morais de Almeida DAINF-UTFPR-PG agosto - 2017 O que é Grafo? Definição formal Um grafo G = (V (G), E(G)) é uma estrutura matemática que consiste de dois conjuntos:
Leia maisGrafos: Busca. Algoritmos e Estruturas de Dados 2. Graça Nunes
Grafos: Busca Algoritmos e Estruturas de Dados Graça Nunes Percorrendo um grafo Percorrendo um Grafo Percorrer um grafo é uma tarefa fundamental Pense no caso de se procurar uma certa informação associada
Leia maisGrafos. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo
PMR2300 Escola Politécnica da Universidade de São Paulo Um grafo é uma estrutura que generaliza árvores, sendo formado por nós e arestas. Cada nó em um grafo pode ser conectado a vários outros nós por
Leia maisDepartamento de Engenharia de Produção UFPR 57
Departamento de Engenharia de Produção UFPR 57 Introdução a Grafos Muitos problemas de otimização podem ser analisados utilizando-se uma estrutura denominada grafo ou rede. Problemas em redes aparecem
Leia maisGrafos: Busca. SCE-183 Algoritmos e Estruturas de Dados 2. Thiago A. S. Pardo Maria Cristina
Grafos: Busca SCE-183 Algoritmos e Estruturas de Dados 2 Thiago A. S. Pardo Maria Cristina Percorrendo um grafo Percorrendo um Grafo Percorrer um grafo é um problema fundamental Deve-se ter uma forma sistemática
Leia maisÁrvore Geradora Mínima
GRAFOS ÁRVORE GERADORA MÍNIMA Prof. André Backes Árvore Geradora Mínima Definição Uma árvore geradora (do inglês, spanning tree) é um subgrafo que contenha todos os vértices do grafo original e um conjunto
Leia maisÁrvores: Conceitos Básicos e Árvore Geradora
Árvores: Conceitos Básicos e Árvore Geradora Grafos e Algoritmos Computacionais Prof. Flávio Humberto Cabral Nunes fhcnunes@yahoo.com.br 1 Introdução No dia a dia aparecem muitos problemas envolvendo árvores:
Leia maisGrafos: árvores geradoras mínimas. Graça Nunes
Grafos: árvores geradoras mínimas Graça Nunes 1 Motivação Suponha que queremos construir estradas para interligar n cidades Cada estrada direta entre as cidades i e j tem um custo associado Nem todas as
Leia maisTeoria dos Grafos Aula 2
Teoria dos Grafos Aula 2 Aula passada Logística, regras Objetivos Grafos, o que são? Formando pares Encontrando caminhos Aula de hoje Outro problema real Definições importantes Algumas propriedades Grafo
Leia maisGrafos COM11087-Tópicos Especiais em Programação II
Grafos COM11087-Tópicos Especiais em Programação II edmar.kampke@ufes.br Introdução Grafos são estruturas muito estudadas na Ciência da Computação para modelagem de problemas Euler (1736) em Königsberg
Leia maisVolmir Eugênio Wilhelm Departamento de Engenharia de Produção UFPR 45
Volmir Eugênio Wilhelm Departamento de Engenharia de Produção UFPR 45 Introdução a Grafos Muitos problemas de otimização podem ser analisados utilizando-se uma estrutura denominada grafo ou rede. Problemas
Leia maisGRAFOS Aula 05 Algoritmos de percurso: busca em largura e profundidade Max Pereira
Ciência da Computação GRAFOS Aula 05 Algoritmos de percurso: busca em largura e profundidade Max Pereira Busca em Largura (Breadth-First Search) Um dos algoritmos mais simples para exploração de um grafo.
Leia mais03 Grafos: percurso, ponderação e caminhos SCC0503 Algoritmos e Estruturas de Dados II
03 Grafos: percurso, ponderação e caminhos SCC0503 Algoritmos e Estruturas de Dados II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2011/1 Moacir
Leia maisESTRUTURAS DISCRETAS (INF 1631) GRAFOS. 1. O que é um grafo? Defina um grafo orientado. Defina um grafo não-orientado.
PUC-Rio Departamento de Informática Profs. Marcus Vinicius S. Poggi de Aragão Período: 0. Horário: as-feiras e as-feiras de - horas de maio de 0 ESTRUTURAS DISCRETAS (INF 6) a Lista de Exercícios Procure
Leia maisMATEMÁTICA DISCRETA. Patrícia Ribeiro 2018/2019. Departamento de Matemática, ESTSetúbal 1 / 47
1 / 47 MATEMÁTICA DISCRETA Patrícia Ribeiro Departamento de Matemática, ESTSetúbal 2018/2019 2 / 47 1 Combinatória 2 Aritmética Racional 3 3 / 47 Capítulo 3 4 / 47 não orientados Um grafo não orientado
Leia maisOalgoritmo de Dijkstra
Dijkstra Oalgoritmo de Dijkstra O algoritmo de Dijkstra, concebido pelo cientista da computação holandês Edsger Dijkstra em 1956 e publicado em 1959, soluciona o problema do caminho mais curto num grafo
Leia maisUNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO Departamento de Ciências de Computação
UNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO Departamento de Ciências de Computação SCC-203 ALGORITMOS E ESTRUTURAS DE DADOS II Prova - Gabarito Nome: Nro. USP ) O matemático
Leia maisCAP4. ELEMENTOS DA TEORIA DE GRAFOS. Grafo [graph]. Estrutura que consiste num par ordenado de conjuntos, G ( V, E) , sendo:
Matemática Discreta ESTiG\IPB Cap4. Elementos da Teoria de Grafos pg 1 CAP4. ELEMENTOS DA TEORIA DE GRAFOS Grafo [graph]. Estrutura que consiste num par ordenado de conjuntos, G ( V, E), sendo: Exemplos
Leia maisTeoria dos Grafos Aula 1 - Introdução
Teoria dos Grafos Aula 1 - Introdução Profa. Sheila Morais de Almeida Mayara Omai Universidade Tecnológica Federal do Paraná - Ponta Grossa 2018 Sheila Almeida e Mayara Omai (UTFPR-PG) Teoria dos Grafos
Leia maisTeoria dos Grafos Aula 8
Teoria dos Grafos Aula 8 Aula passada Classe de funções e notação Propriedades da notação Funções usuais Aula de hoje Grafos direcionados Busca em grafos direcionados Ordenação topológica Tempo de execução
Leia maisBCC204 - Teoria dos Grafos
BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal
Leia maisGrafos - Motivação. Grafos - Motivação. Algoritmos e Estruturas de Dados II Introdução a Grafos
Algoritmos e Estruturas de Dados II Introdução a Profa. M. Cristina/ Profa. Rosane (2010) Material de aula original: Profa. Josiane M. Bueno - Motivação : conceito introduzido por Euler, em 1736 Problema
Leia mais01 Grafos: parte 1 SCC0503 Algoritmos e Estruturas de Dados II
01 Grafos: parte 1 SCC0503 Algoritmos e Estruturas de Dados II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2011/1 Moacir Ponti Jr. (ICMCUSP) 01
Leia maisTEORIA DOS GRAFOS TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS MATEMÁTICA DISCRETA II PROFº MARCOS NASCIMENTO
TEORIA DOS GRAFOS TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS MATEMÁTICA DISCRETA II PROFº MARCOS NASCIMENTO Por que estudar grafos? Importante ferramenta matemática com aplicação em diversas áreas
Leia maisAlgoritmos em Grafos COM11087-Tópicos Especiais em Programação I
Algoritmos em Grafos COM11087-Tópicos Especiais em Programação I edmar.kampke@ufes.br Introdução Teoria dos Grafos é o estudo das propriedades e estruturas dos grafos. O objetivo é, após modelar um problema
Leia maisDisciplina: Matemática Discreta Agostinho Iaqchan Ryokiti Homa
Disciplina: Matemática Discreta Agostinho Iaqchan Ryokiti Homa Aula -Grafos Uma figura vale por mil palavras A representação de dados e ou informações utilizando de recursos visuais é, em muitos casos,
Leia maisComunicação e redes. Aula 2: Teoria dos Grafos Conceitos básicos. Professor: Guilherme Oliveira Mota.
Comunicação e redes Aula 2: Teoria dos Grafos Conceitos básicos Professor: Guilherme Oliveira Mota g.mota@ufabc.edu.br Aula passada Redes complexas Grafo G: Conjunto de pontos e linhas ligando esses pontos
Leia maisGRAFOS BUSCAS E MENOR CAMINHO. Prof. André Backes
8//6 GRAFOS BUSCAS E MENOR CAMINHO Prof. André Backes Busca em grafos Definição Consiste em explorar o grafo de uma maneira bem específica. Trata-se de um processo sistemático de como caminhar por seus
Leia maisIntrodução à Teoria dos Grafos
Introdução à Teoria dos Grafos Profa. Sheila Morais de Almeida DAINF-UTFPR-PG junho - 2018 Sheila Almeida (DAINF-UTFPR-PG) Introdução à Teoria dos Grafos junho - 2018 1 / 38 Este material é preparado usando
Leia maisProf. Marco Antonio M. Carvalho
Prof. Marco Antonio M. Carvalho Lembretes Lista de discussão Endereço: programaacao@googlegroups.com Solicitem acesso: http://groups.google.com/group/programaacao Página com material dos treinamentos http://www.decom.ufop.br/marco/extensao/obi/
Leia maisGRAFOS. Prof. André Backes. Como representar um conjunto de objetos e as suas relações?
8/0/06 GRAFOS Prof. André Backes Definição Como representar um conjunto de objetos e as suas relações? Diversos tipos de aplicações necessitam disso Um grafo é um modelo matemático que representa as relações
Leia mais05 Grafos: ordenação topológica SCC0503 Algoritmos e Estruturas de Dados II
05 Grafos: ordenação topológica SCC0503 Algoritmos e Estruturas de Dados II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2011/1 Moacir Ponti Jr.
Leia maisCap. 2 Conceitos Básicos em Teoria dos Grafos
Teoria dos Grafos e Aplicações 8 Cap. 2 Conceitos Básicos em Teoria dos Grafos 2.1 Grafo É uma noção simples, abstrata e intuitiva, usada para representar a idéia de alguma espécie de relação entre os
Leia maisgrafo nós vértices arcos arestas
GRAFOS E APLICAÇÕES 1. INTRODUÇÃO 1) Um grafo G = (V, E) consiste num conjunto de nós (ou vértices) V e num conjunto de arcos (ou arestas) E. Cada arco é representado por um par de nós. No seguinte exemplo,
Leia maisCT-234. Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural. Carlos Alberto Alonso Sanches
CT-2 Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural Carlos Alberto Alonso Sanches CT-2 8) Algoritmos em grafos Conceitos básicos, representações, explorações sistemáticas Definição
Leia maisAnálise e Síntese de Algoritmos
Análise e Síntese de Algoritmos Algoritmos Elementares em Grafos [CLRS, Cap. 22] 24/25 Contexto Revisão [CLRS, Cap.-3] Fundamentos; notação; exemplos Algoritmos em Grafos [CLRS, Cap.2-26] Algoritmos elementares
Leia maisTeoria dos Grafos. Profa. Alessandra Martins Coelho
Teoria dos Grafos Profa. Alessandra Martins Coelho fev/2014 Avaliação 2 Provas 30 pontos cada; 3 Implementações 10 pontos cada; 1 Seminário 10 pontos; Listas de exercícios Listas não valem nota, entretanto...
Leia maisGRAFOS Aula 08 Árvore Geradora Mínima: Algoritmos de Kruskal e Prim-Jarnik Max Pereira
Ciência da Computação GRAFOS Aula 08 Árvore Geradora Mínima: Algoritmos de Kruskal e Prim-Jarnik Max Pereira Árvore Geradora (spanning tree) É um subconjunto de um grafo G que possui todos os vértices
Leia maisTGR BCC Representação Computacional de Grafos. Prof. Ricardo José Pfitscher
TGR BCC Representação Computacional de Grafos Prof. Ricardo José Pfitscher Cronograma Representação Matriz de djacências Lista de djacências Matriz de Incidências Representação Como podemos representar
Leia maisMATEMÁTICA DISCRETA PARA ENGENHARIA DE COMPUTAÇÃO
MATEMÁTICA DISCRETA PARA ENGENHARIA DE COMPUTAÇÃO Profa. Kathya Collazos Linares *As aulas baseiam-se no material do Professor Antonio Alfredo Ferreira Loureiro; Jorge Figueiredo e Judith Gersting Árvore
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 8 Grafos. Estrutura de Dados 1
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA 8 Grafos Estrutura de Dados 1 Grafos - Motivação Muitas aplicações em computação necessitam considerar conjunto de conexões
Leia maisSub-grafo. Árvore Geradora Mínima
Comentários da aula anterior Componentes Fortemente Conectados (algoritmo) 1. Chama BuscaEmProfundidade (G) para obter os tempos de término (t[u], ou f[u]) para todos os vértices de G, isto é, enquanto
Leia maisGrafos: componentes fortemente conexos, árvores geradoras mínimas
Grafos: componentes fortemente conexos, árvores geradoras mínimas SCE-183 Algoritmos e Estruturas de Dados 2 Thiago A. S. Pardo Maria Cristina 1 Componentes fortemente conexos Um componente fortemente
Leia maisGrafos: algoritmos de busca
busca em grafos como caminhar no grafo de modo a percorrer todos os seus vértices evitando repetições desnecessárias do mesmo vértice? e por onde começar? solução: necessidade de recursos adicionais que
Leia maisGrafos representação e aplicações. Prof. Guilherme Tomaschewski Netto
Grafos representação e aplicações Prof. Guilherme Tomaschewski Netto guilherme.netto@gmail.com Roteiro! Contextualização! Apresentação, um pouco de história! Conceitos Grafos! Principais aplicacões! Estruturas
Leia maisProblema da Árvore Geradora Mínima (The Minimum Spanning Tree Problem-MST)
Volmir Eugênio Wilhelm Departamento de Engenharia de Produção UFPR 45 Problema da Árvore Geradora Mínima (The Minimum Spanning Tree Problem-MST) Alguns problemas de otimização combinatória podem ser formulados
Leia maisAED2 - Aula 22 Busca em largura, cálculo de distâncias
AED2 - Aula 22 Busca em largura, cálculo de distâncias Relembrando a busca genérica, usando um versão alternativa: marque todos os vértices como não encontrados. marque s como encontrado. coloque s no
Leia maisPAA-DCC-UFAM. Grafos. Universidade Federal do Amazonas Departamento de Eletrônica e Computação
Grafos Universidade Federal do Amazonas Departamento de Eletrônica e Computação Grafos () Um grafo é composto por um conjunto de vértices e um conjunto de arestas Cada aresta liga dois vértices do grafo
Leia mais5COP096 TeoriadaComputação
Sylvio 1 Barbon Jr barbon@uel.br 5COP096 TeoriadaComputação Aula 12 Prof. Dr. Sylvio Barbon Junior Sumário - Árvore Geradora Mínima - Teorema pare reconhecer arestas seguras; - Algoritmo de Prim; - Algoritmo
Leia mais06 Grafos: Caminhos Mínimos SCC0503 Algoritmos e Estruturas de Dados II
06 Grafos: Caminhos Mínimos SCC050 Algoritmos e Estruturas de Dados II Paulo H. R. Gabriel Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 011/1 Paulo H.
Leia maisTeoria dos Grafos Aula 2
Teoria dos Grafos Aula 2 Aula passada Logística Objetivos Grafos, o que são? Formando pares Aula de hoje Mais problemas reais Definições importantes Algumas propriedades Objetivos da Disciplina Grafos
Leia maisTeoria dos Grafos. Edson Prestes
Edson Prestes Grafos Enumeração de Passeios/Caminhos O processo associado à enumeração de caminhos de um grafo/dígrafo é semelhante ao processo de contagem com a diferença de que usaremos uma matriz de
Leia maisAlg l ori r t i m t os e E str t u r tu t ra r s d e D ados I I Intr t o r duçã ç o ã a a Gr G a r f a o f s P of o a. M. C r C ist s ina n a /
Algoritmos e Estruturas de Dados II Introdução a Grafos Profa. M. Cristina / Profa. Rosane (2012) Baseado no material de aula original: Profª. Josiane M. Bueno Divisão do arquivo 1ª parte: Motivação Definição:
Leia maisConceito Básicos da Teoria de Grafos
1 Conceito Básicos da Teoria de Grafos GRAFO Um grafo G(V,A) é definido pelo par de conjuntos V e A, onde: V - conjunto não vazio: os vértices ou nodos do grafo; A - conjunto de pares ordenados a=(v,w),
Leia maisConceitos Básicos da Teoria de Grafos
Conceitos Básicos da Teoria de Grafos Universidade Federal do Pampa - UNIPAMPA Engenharia da Computação Estrutura de Dados Profª Sandra Piovesan Grafos Uma noção simples, abstrata e intuitiva. Representa
Leia maisTeoria dos Grafos Introdu c ao
Teoria dos Grafos Introdução Referências P. O. Boaventura Netto, Grafos: Teoria, Modelos e Algoritmos, São Paulo, E. Blucher 001; R. J. Trudeau, Introduction to Graph Theory, New York, Dover Publications,
Leia maisGrafos parte 2* Algoritmos e Estruturas de Dados II SCC-203 Rosane 2010/2011. *Baseado em material de professores dos anos anteriores
Grafos parte 2* Algoritmos e Estruturas de Dados II SCC-203 Rosane 2010/2011 *Baseado em material de professores dos anos anteriores Divisão do Arquivo 1ª parte Percorrendo um grafo Eficiência, Correção
Leia maisGrafos: aplicações. Grafos: árvore geradora mínima
árvore geradora mínima caminhos mínimos problemas tipo 1 desejase conectar todos os computadores em um prédio usando a menor quantidade possível de cabos uma companhia aérea deseja voar para algumas cidades
Leia maisCES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches
CES-11 Algoritmos e Estruturas de Dados Carlos Alberto Alonso Sanches Juliana de Melo Bezerra CES-11 Grafos Conceitos gerais e representações Algoritmos em grafos Exploração sistemática em largura Caminhos
Leia maisGrafos parte 2. Percorrendo um grafo. Correção. Eficiência. Percorrendo um Grafo. Percorrendo um Grafo. Percorrendo um Grafo
Percorrendo um grafo Grafos parte 2 SCC-203 Algoritmos e Estruturas de Dados 2 Rosane 2010 Baseado em material de professores dos anos anteriores Percorrendo um Grafo Percorrer um grafo é um problema fundamental
Leia maisBusca em Profundidade. Componentes Conexos. Grafos. Maria Adriana Vidigal de Lima. Fevereiro
Fevereiro - 009 Definição de Grafo Listas de Adjacências de Técnicas da Classificação das Arestas Aplicação do de de 4 Grafo Transposto Definição de Grafo Listas de Adjacências de Exemplos de Aplicação
Leia maisProva Didática Grafos: Árvores Geradoras e Caminhos Mínimos, Análise de Complexidade
Prova Didática Grafos: Árvores Geradoras e Caminhos Mínimos, Análise de Complexidade Gustavo E.A.P.A. Batista 25 de janeiro de 2005 1 Contextualização 2 Caminhos Mínimos Caminhos Mínimos de uma Origem
Leia maisAULA 11 PROJETO E ANÁLISE DE ALGORITMOS. Conceitos básicos e representação de grafos Karina Valdivia Delgado
AULA 11 PROJETO E ANÁLISE DE ALGORITMOS Conceitos básicos e representação de grafos Karina Valdivia Delgado Roteiro Motivação Conceitos básicos Representação Motivação Um grafo é uma abstração que permite
Leia maisESTRUTURAS DE DADOS. prof. Alexandre César Muniz de Oliveira. 1. Introdução 2. Pilhas 3. Filas 4. Listas 5. Árvores 6. Ordenação 7. Busca 8.
ESTRUTURAS DE DADOS prof. Alexandre César Muniz de Oliveira 1. Introdução 2. Pilhas 3. Filas 4. Listas 5. Árvores 6. Ordenação 7. Busca 8. Grafos Sugestão bibliográfica: ESTRUTURAS DE DADOS USANDO C Aaron
Leia maisGRAFOS Conceitos Básicos (Parte 1)
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:
Leia maisPesquisa em Grafos. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Pesquisa em Grafos 2014/ / 33
Pesquisa em Grafos Pedro Ribeiro DCC/FCUP 2014/2015 Pedro Ribeiro (DCC/FCUP) Pesquisa em Grafos 2014/2015 1 / 33 Pesquisa em Grafos Uma das tarefas mais importantes é saber percorrer um grafo, ou seja
Leia maisGrafos: caminhos mínimos
quando o grafo é sem pesos, a determinação de um caminho mais curto pode ser feita através de uma busca em largura caminho mais curto é aquele que apresenta o menor número de arestas quando o grafo tem
Leia maisAlgoritmos e Estruturas de Dados II Introdução a Grafos. Divisão do arquivo
Algoritmos e Estruturas de Dados II Introdução a Profa. M. Cristina / Profa. Rosane (2010/11) Baseado no material de aula original: Profª. Josiane M. Bueno Divisão do arquivo 1ª parte: Motivação Definição:
Leia maisSCC Modelagem Computacional em Grafos Introdução a Grafos
SCC0216 - Modelagem Computacional em Grafos Introdução a Grafos Prof. Alneu (alneu@icmc.usp.br ) / Profa. Rosane (rminghim@icmc.usp.br) PAE: Alan (alan@icmc.usp.br) / Henry (henry@icmc.usp.br) Baseado
Leia maisUNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO Departamento de Ciências de Computação
UNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO Departamento de Ciências de Computação SCC-203 ALGORITMOS E ESTRUTURAS DE DADOS II Prova - Gabarito Nome: Nro. USP ) O matemático
Leia maisGrafos IFRN. Prof. Robinson Alves
Grafos IFRN Prof. Robinson Alves Problema do Caixeiro Viajante Consiste em determinar o menor caminho, passando por todos os vértices uma única vez e retornando ao vértice de origem Métodos: Tentativa
Leia maisGrafos Parte 2. SCC-603 Algoritmos e Estruturas de Dados II. Profª. Rosane Minghim / Baseado em material de professores dos anos anteriores
Grafos Parte 2 SCC-603 Algoritmos e Estruturas de Dados II Profª. Rosane Minghim / 2012 Baseado em material de professores dos anos anteriores Percorrendo um grafo Percorrendo um Grafo Percorrer um grafo
Leia maisAlgoritmos e Estruturas de Dados II Grafos conceitos gerais. Thiago A. S. Pardo Profa. M. Cristina Material de aula da Profa. Josiane M.
Algoritmos e Estruturas de Dados II conceitos gerais Thiago A. S. Pardo Profa. M. Cristina Material de aula da Profa. Josiane M. Bueno Valorados Um grafo valorado (ponderado/com pesos) G(V,A) consiste
Leia maisDesafios de Programação TCC Turma A-1
Desafios de Programação TCC-00.254 Turma A-1 Conteúdo Grafos Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2015.1/tcc-00.254
Leia maisTeoria dos Grafos Caminhos. Profª. Alessandra Martins Coelho
Teoria dos Grafos Caminhos Profª. Alessandra Martins Coelho junho/2014 Conexidade Em grande parte de aplicações do modelo em grafos, as relações que envolvem os vértices formam uma estrutura contínua;
Leia maisComplexidade de Algoritmos
Complexidade de Algoritmos Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Prof. Cristiano Damiani Vasconcellos cristiano.vasconcellos@udesc.br Algoritmos de Grafos Complexidade
Leia maisProblemas de Fluxo em Redes
CAPÍTULO 7 1. Conceitos fundamentais de grafos Em muitos problemas que nos surgem, a forma mais simples de o descrever, é representá-lo em forma de grafo, uma vez que um grafo oferece uma representação
Leia maisAnálise e Síntese de Algoritmos. Algoritmos em Grafos CLRS, Cap. 22
Análise e Síntese de Algoritmos Algoritmos em Grafos CLRS, Cap. 22 Mudança no Horário Aulas Teóricas de 4ª feira 10:30 12:00 Sala: FA1 12:00 13:30 Sala: FA1 Deixa de haver aula teórica às 9:00 por troca
Leia maisAula 09. Percurso em grafo
Logo Aula 09 Percurso em grafo 2 Percurso de grafo Veremos agora a pesquisa em profundidade e pesquisa em largura de um grafo. Ambos os algoritmos recebem um nó inicial no grafo, e eles visitam todos os
Leia maisGrafos Orientados (digrafos)
Grafos Orientados (digrafos) Grafo Orientado ou digrafo Consiste em um grafo G = (V,A) onde V = {v 1,, v n } é um conjunto de vértices e A = {a 1,, a k } é um conjunto de arcos tais que a k, k=1,,m é representado
Leia maisGRAFOS Aula 04 Caminhos, Conexidade e Distância Max Pereira
Ciência da Computação GRAFOS Aula 04 Caminhos, Conexidade e Distância Max Pereira Um grafo é dito conexo se for possível visitar qualquer vértice, partindo de um outro qualquer, passando pelas suas arestas.
Leia maisAlgoritmos e Estruturas de Dados
Algoritmos e Estruturas de Dados Grafos Slides baseados em: ZIVIANI, N. Projetos de Algoritmos - com implementações em Java e C++. Thomson Learning, 2007. Cap 7. CORMEN, H.T.; LEISERSON, C.E.; RIVEST,
Leia maisTeoria dos Grafos. Edson Prestes
Edson Prestes Árvores Sabemos que com um ou dois vértices apenas uma árvore pode ser formada. Entretanto com três vértices podemos formar três árvores. Com quatro vértices temos quatro estrelas e doze
Leia maisMelhores momentos AULAS 1-8
Melhores momentos AULAS 1-8 Procurando um caminho Problema: dados um digrafo G e dois vértices s e t decidir se existe um caminho de s a t Exemplo: para s = e t = 1 a resposta é SIM 2 1 4 3 5 Procurando
Leia maisCES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra
ES- Algoritmos e Estruturas de Dados arlos Alberto Alonso Sanches Juliana de Melo ezerra ES- rafos onceitos gerais e representações Algoritmos em grafos Exploração sistemática em largura aminhos mais curtos
Leia maisIntrodução a Grafos Letícia Rodrigues Bueno
Introdução a Grafos Letícia Rodrigues Bueno UFABC Teoria dos Grafos - Motivação Objetivo: aprender a resolver problemas; Como: usando grafos para modelar os problemas; Grafos: ferramenta fundamental de
Leia mais2 Definição do Problema
Definição do Problema. Formulação Matemática O problema do Fluxo Máximo entre todos os pares de nós surge no contexto de redes, estas representadas por grafos, e deriva-se do problema singular de fluxo
Leia maisTeoria dos Grafos. Edson Prestes
Edson Prestes Referências P. O. Boaventura Netto, Grafos: Teoria, Modelos e Algoritmos, São Paulo, E. Blucher 2001; R. J. Trudeau, Introduction to Graph Theory, New York, Dover Publications, 1993; Kaufmann,
Leia maisMODELAGEM MATEMÁTICA E A CONTEXTUALIZAÇÃO DO ESTUDO DE GRAFOS E MATRIZES NO ENSINO MÉDIO
MODELAGEM MATEMÁTICA E A CONTEXTUALIZAÇÃO DO ESTUDO DE GRAFOS E MATRIZES NO ENSINO MÉDIO RESUMO Maria Eliana Barreto Druzian Dr. MarcioViolante Ferreira Este trabalho aborda a teoria de grafos e pretende
Leia maisBusca em Largura. Adaptado de Humberto C. B. Oliveira
Busca em Largura Adaptado de Humberto C. B. Oliveira Últimas aulas Introdução: História Aplicações Conceitos Básicos: Grafo simples Grafo completo/vazio Grafo não orientado: Arestas laço Arestas paralelas
Leia mais