Análise e Síntese de Algoritmos. Caminhos Mais Curtos para Todos os Pares CLRS, Cap. 25

Tamanho: px
Começar a partir da página:

Download "Análise e Síntese de Algoritmos. Caminhos Mais Curtos para Todos os Pares CLRS, Cap. 25"

Transcrição

1 Análise e Síntese de Algoritmos Caminhos Mais Curtos para Todos os Pares CLRS, Cap. 25

2 Contexto Algoritmos Elementares em Grafos (CLR, Cap. 22) BFS & DFS Ordenação Topológica & SCCs Árvores Abrangentes de Menor Custo (CLR, Cap. 23) Algoritmos de Borůvka, Kruskal e Prim Caminhos mais curtos com fonte única (CLR, Cap. 24) Algoritmos de Dkstra e Bellman-Ford Caminhos mais curtos entre todos os pares (CLR, Cap. 25) Solução Recursiva e Algoritmo de Floyd-Warshall 2005/2006 Análise e Síntese de Algoritmos 2

3 Resumo Caminhos Mais Curtos entre Todos os Pares (APSPs) Definições Soluções recursivas Algoritmo de Floyd-Warshall Fecho Transitivo Algoritmo de Johnson 2005/2006 Análise e Síntese de Algoritmos 3

4 Caminhos Mais Curtos entre Todos os Pares (APSPs) Observações Encontrar caminhos mais curtos entre todos os pares de vértices Se pesos não negativos Utilizar algoritmo de Dkstra, assumindo cada vértice como fonte: O(V E lg V) (que é O(V 3 lg V) se grafo é denso) Se pesos negativos Utilizar algoritmo de Bellman-Ford, assumindo cada vértice como fonte: O(V 2 E) (que é O(V 4 ) se grafo é denso) Objectivo: Encontrar algoritmos mais eficientes 2005/2006 Análise e Síntese de Algoritmos 4

5 APSPs Definições Representação: utilização de matriz de adjacências Pesos dos arcos: matriz (n x n) W = (w ) w = 0 peso do arco (i, j) se i se i se i = j j e j e ( i, j) ( i, j) E E Representação dos caminhos mais curtos: matriz (n x n) D = (d ) d é o peso do caminho mais curto entre os vértices i e j d = δ(v i,v j ) 2005/2006 Análise e Síntese de Algoritmos 5

6 APSPs Definições Representação de caminhos mais curtos Matriz de predecessores = (π ) π : NIL: se i = j ou não existe caminho de i para j Caso contrário: predecessor de j num caminho mais curto de i para j Sub-grafo de predecessores de G para i, G π, i = (V π, i, E π, i ) V { j V : π NIL} {} i π, i = E {( π, j) : j V {i}} π, i = π, i Sub-grafo induzido pela linha i de Exemplo 2005/2006 Análise e Síntese de Algoritmos 6

7 APSPs Solução Recursiva Sub-caminhos de caminhos mais curtos são também caminhos mais curtos Peso mínimo em caminho de vértice i para vértice j (m) que contém não mais do que m arcos: Com m = 0, existe caminho de i para j se e só se i = j ( ) 0 se i = j d 0 = se i j Para m 1, { { } ( m 1),min d + w = min{ d w } ( m) ( m 1) ( m 1) d = min d + 1 k n ik kj 1 k n ik d kj w jj = /2006 Análise e Síntese de Algoritmos 7

8 APSPs Solução Recursiva Calcular sequência de matrizes D (1),, D (n-1), onde D (n-1) contém os pesos dos caminhos mais curtos D (1) = W Extend-Shortest-Paths(D,W) n = rows[w] D : matriz (n x n) for i = 1 to n for j = 1 to n d' = for k = 1 to n ' ' d = min d,dik + return D ( w ) Complexidade: Θ(n 3 ) p/ cada matriz; Total: Θ(n 4 ) 2005/2006 Análise e Síntese de Algoritmos 8 kj

9 APSPs Solução Recursiva Genericamente: calcular D (i) em função de D (i-1) (e de W) Complexidade para cálculo de D (n) : Θ(n 4 ) OBS: é possível melhorar complexidade reduzindo número de matrizes calculadas: Θ(n 3 lg n) A cada iteração, calcular D (2i) em função de D (i) e de D (i) 2005/2006 Análise e Síntese de Algoritmos 9

10 APSPs Algoritmo de Floyd-Warshall Caracterização de um caminho mais curto Vértices intermédios de caminho p = v 1,v 2,,v k, {v 2,,v k-1 } Considerar todos os caminhos entre i e j com vértices intermédios retirados do conjunto {1,,k} e seja p um caminho mais curto (p é simples) Se k não é vértice intermédio de p, então todos os vértices intermédios de p estão em {1,,k-1} Se k é vértice intermédio de p, então existem caminhos p 1 e p 2, respectivamente de i para k e de k para j com vértices intermédios em {1,,k} k não é vértice intermédio de p 1 e de p 2 p 1 e p 2 com vértices intermédios em {1,,k-1} 2005/2006 Análise e Síntese de Algoritmos 10

11 APSPs Algoritmo de Floyd-Warshall k p 1 p 2 i j Formulação Vértices entre 1 e k-1 ( k ) w min d = 1 ik kj ( k 1) ( k 1) ( k ) ( d,d + d ) se k se k = 0 1 Vértices entre 1 e k 2005/2006 Análise e Síntese de Algoritmos 11

12 APSPs Algoritmo de Floyd-Warshall Floyd-Warshall(W) n = rows[w] D (0) = W for k = 1 to n for i = 1 to n for j = 1 to n k d return D (n) = min ( d,d + d ) ( ) ( k 1) ( k 1) ( k 1) ik kj Complexidade: Θ(n 3 ) Exemplo 2005/2006 Análise e Síntese de Algoritmos 12

13 Fecho Transitivo de um Grafo Dirigido Dado um grafo G = (V, E) dirigido, o fecho transitivo é definido por G* = (V, E*) tal que, E*={(i, j): existe caminho de i para j em G} Algoritmo: Atribuir a cada arco peso 1 e utilizar algoritmo de Floyd- Warshall Se d, então (i, j) E* Complexidade: Θ(n 3 ) 2005/2006 Análise e Síntese de Algoritmos 13

14 Fecho Transitivo de um Grafo Dirigido Outro algoritmo: Substituir operações min e + por e, respectivamente Se existe caminho de i para j com todos os vértices ( ) intermédios em {1,2,,k}, t k = 1 ( ) Caso contrário, t k 0 Formulação: = ( ) 0 se i j e ( i, j) = 1 se i = j ou ( i, j) t 0 E E t ( t t ) se k 1 ( k ) ( k 1) ( k 1) ( k 1) = t ik kj Complexidade: Θ(n 3 ) (mas constantes menores) Exemplo 2005/2006 Análise e Síntese de Algoritmos 14

15 Fecho Transitivo de um Grafo Dirigido Transitive-Closure(G) n = V[G] for i = 1 to n for j = 1 to n if i = j or (i, j) E ( ) t 0 = 1 else ( ) t 0 = 0 for k = 1 to n for i = 1 to n for j = 1 to n k k t return T (n) = t ( t t ) ( ) ( 1) ( k 1) ( k 1) ik kj 2005/2006 Análise e Síntese de Algoritmos 15

16 APSPs Algoritmo de Johnson Utiliza algoritmos de Dkstra e de Bellman-Ford Baseado em re-pesagem dos arcos Se arcos com pesos não negativos, utilizar Dkstra para cada vértice Caso contrário, calcular novo conjunto de pesos não negativos w, tal que Um caminho mais curto de u para v com função w é também caminho mais curto com função w Para cada arco (u, v) o peso w (u, v) é não negativo 2005/2006 Análise e Síntese de Algoritmos 16

17 APSPs Algoritmo de Johnson Dado G = (V, E), com função de pesos w e de repesagem h: V R, seja w (u, v) = w(u, v) + h(u) - h(v) Seja p = v 0,v 1,,v k. Então w(p) = δ(v 0, v k ) se e só se w (p) = δ (v 0, v k ) = δ(v 0, v k ) + h(v 0 ) - h(v k ) Existe ciclo negativo com w se e só se existe ciclo negativo com w w' ( p) = w( p) + h( v ) h( ) w' 0 v k k ( p) = w' ( v,v ) = = i= 1 k i= 1 k i= 1 i 1 ( w( v,v ) + h( v ) h( v )) w i 1 ( v,v ) + h( v ) h( v ) = w( p) + h( v ) h( v ) i 1 i i i 2005/2006 Análise e Síntese de Algoritmos 17 0 i 1 k i 0 k

18 APSPs Algoritmo de Johnson w ( p) = δ( v,v ) w' ( p) = δ' ( v, ) 0 k 0 v k Hipótese: existe p z, caminho mais curto de v 0 para v k com w w' p z < w' p Então: ( ) ( ) w ( p ) + h( v ) h( v ) = w' ( p ) < w' ( p) = w( p) + h( v ) h( v ) z 0 k z 0 k O que implica w( p z ) < w( p) Mas p é caminho mais curto com w; contradição! OBS: Para quaisquer caminhos p 1, p 2 entre v 0 e v k, verifica-se w(p 1 ) < w(p 2 ) w (p 1 ) < w (p 2 ) 2005/2006 Análise e Síntese de Algoritmos 18

19 APSPs Algoritmo de Johnson w ( p) = δ( v,v ) w' ( p) = δ' ( v, ) 0 k 0 v k Semelhante: Admitir p z como caminho mais curto de v 0 para v k com w (ou considerar observação anterior) Existe ciclo negativo com w se e só se existe com w c ( ) 0 = v 0,v1, K,v k ; v 0 = vk; w c < w' ( c) = w( c) + h( v ) h( v ) w( c) 0 k = Caminhos mais curtos e ciclos negativos inalteráveis com mudanças na função de pesos w (u, v) = w(u, v) + h(u) - h(v) 2005/2006 Análise e Síntese de Algoritmos 19

20 APSPs Algoritmo de Johnson Dado G = (V, E), criar G = (V,E ): V = V { s } E = E { (s, v) : v V } ( v V, atingível a partir de s) w(s, v) = 0 Com ciclos negativos: Detectados com algoritmo de Bellman-Ford aplicado a G! Sem ciclos negativos: Definir: h(v) = δ(s, v) Dado que: h(v) h(u) + w(u, v) Verifica-se: w (u, v) = w(u, v) + h(u) - h(v) 0! /2006 Análise e Síntese de Algoritmos 20

21 APSPs Algoritmo de Johnson Executar Dkstra para todo o u V Cálculo de δ (u,v), para u V Mas também, δ (u,v) = δ(u, v) + h(u) - h(v) δ(u,v) = δ (u, v) + h(v) - h(u) 2005/2006 Análise e Síntese de Algoritmos 21

22 APSPs Algoritmo de Johnson Johnson(G) Representar G if Bellman-Ford(G,w,s) = FALSE print Indicar ciclo negativo else atribuir h(v) = δ(s, v), calculado com Bellman-Ford calcular w (u,v) = w(u,v) + h(u) - h(v) para cada arco (u,v) foreach v V[G] executar Dkstra(G,w,v); calcular δ (u, v) d uv = δ (u, v) + h(v) - h(u) return D 2005/2006 Análise e Síntese de Algoritmos 22

23 APSPs Algoritmo de Johnson Complexidade: Bellman-Ford: O(V E) Executar Dkstra para cada vértice: O(V (V + E) lg V) Assumindo amontoado (heap) binário Total: O(V (V + E) lg V) Útil para grafos esparsos Exemplo 2005/2006 Análise e Síntese de Algoritmos 23

24 Revisão Caminhos Mais Curtos entre Todos os Pares (APSPs) Definições Solução recursiva Algoritmo de Floyd-Warshall Fecho Transitivo Algoritmo de Johnson A seguir: Fluxos máximos em grafos (CLR, Cap. 26) 2005/2006 Análise e Síntese de Algoritmos 24

2006/2007 Análise e Síntese de Algoritmos 2

2006/2007 Análise e Síntese de Algoritmos 2 Análise e Síntese de Algoritmos Árvores Abrangentes de Menor Custo CLRS, Cap. 23 Resumo Árvores Abrangentes de Menor Custo Minimum-Spanning Trees (MSTs) Algoritmo (greedy) genérico Prova de optimalidade

Leia mais

Eduardo Camponogara. DAS-9003: Introdução a Algoritmos

Eduardo Camponogara. DAS-9003: Introdução a Algoritmos Caminhos Mínimos entre Todos os Vértices 1/ 48 Caminhos Mínimos entre Todos os Vértices Eduardo Camponogara Departamento de Automação e Sistemas Universidade Federal de Santa Catarina DAS-9003: Introdução

Leia mais

INSTITUTO SUPERIOR TÉCNICO Análise e Síntese de Algoritmos. RESOLUÇÃO DA REPESCAGEM DO 1 o TESTE

INSTITUTO SUPERIOR TÉCNICO Análise e Síntese de Algoritmos. RESOLUÇÃO DA REPESCAGEM DO 1 o TESTE INSTITUTO SUPERIOR TÉCNICO Análise e Síntese de Algoritmos Ano Lectivo de 00/006 o Semestre RESOLUÇÃO DA REPESCAGEM DO o TESTE I. (,+,+,0 =,0 val.) ) Considere o seguinte grafo. d f i l a c g h b e j k

Leia mais

Fluxo Máximo a Custo Mínimo

Fluxo Máximo a Custo Mínimo Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Departamento de Sistemas e Computação Programa de Educação Tutorial (PET) Demontiê Junior (demontie@dsc.ufcg.edu.br) Fluxo

Leia mais

Grafos Msc. Daniele Carvalho Oliveira. Doutoranda em Computação UFU Mestre em Computação - UFU Bacharel em Computação - UFJF 1

Grafos Msc. Daniele Carvalho Oliveira. Doutoranda em Computação UFU Mestre em Computação - UFU Bacharel em Computação - UFJF 1 Grafos Msc. Daniele Carvalho Oliveira Doutoranda em Computação UFU Mestre em Computação - UFU Bacharel em Computação - UFJF 1 Árvore Geradora Mínima 2 Porque é um problema interessante Suponha que queremos

Leia mais

Grafos. Notas. Notas. Notas. Notas. Caminhos mais curtos de única origem. Subestrutura ótima. Propriedades de caminhos mais curtos

Grafos. Notas. Notas. Notas. Notas. Caminhos mais curtos de única origem. Subestrutura ótima. Propriedades de caminhos mais curtos Grafos Caminhos mais curtos de única origem Conteúdo Subestrutura ótima Inicialização Propriedades de caminhos mais curtos Algoritmos Algoritmo de Bellman-Ford Caminhos mais curtos de única origem em gaos

Leia mais

Matemática Discreta. Leandro Colombi Resendo. Matemática Discreta Bacharel em Sistemas de Informações

Matemática Discreta. Leandro Colombi Resendo. Matemática Discreta Bacharel em Sistemas de Informações Matemática Discreta Leandro Colombi Resendo Algoritmos para Grafos Grafos Direcionados e Relações Binárias; o Algoritmo de Warshall Caminho de Euler e Circuito Hamiltoniano Caminho Mínimo e Árvore Geradora

Leia mais

Teoria dos Grafos. Edson Prestes

Teoria dos Grafos. Edson Prestes Edson Prestes Grafos Cliques Maximais Para determinar os cliques maximais de um grafo G podemos usar o método de Maghout em Dado o grafo abaixo, calcule Determine os conjuntos independentes maximais em

Leia mais

Análise e Síntese de Algoritmos

Análise e Síntese de Algoritmos Análise e Síntese de Algoritmos Fluxos Máximos em Grafos CLRS, Cap. 26 Contexto Algoritmos elementares em grafos (CLR, Cap. 22) Árvores abrangentes de menor custo (CLR, Cap. 23) Caminhos mais curtos com

Leia mais

Árvores Binárias e Busca. Jeane Melo

Árvores Binárias e Busca. Jeane Melo Árvores Binárias e Busca Jeane Melo Roteiro Parte 1 Árvores Relação hierárquica Definição Formal Terminologia Caminhamento em Árvores Binárias Exemplos Parte 2 Busca seqüencial Busca Binária Grafos Conjunto

Leia mais

Análise e Síntese de Algoritmos. Fluxos Máximos em Grafos CLRS, Cap. 26

Análise e Síntese de Algoritmos. Fluxos Máximos em Grafos CLRS, Cap. 26 Análise e Síntese de Algoritmos Fluxos Máximos em Grafos CLRS, Cap. 26 Contexto Algoritmos elementares em grafos (CLR, Cap. 22) Árvores abrangentes de menor custo (CLR, Cap. 23) Caminhos mais curtos com

Leia mais

Grafos: árvores geradoras mínimas. Graça Nunes

Grafos: á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 mais

CAPÍTULO 2. Grafos e Redes

CAPÍTULO 2. Grafos e Redes CAPÍTULO 2 1. Introdução Um grafo é uma representação visual de um determinado conjunto de dados e da ligação existente entre alguns dos elementos desse conjunto. Desta forma, em muitos dos problemas que

Leia mais

Grafos - Introdução. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Grafos - Introdução 2014/ / 32

Grafos - 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 mais

Grafos: caminhos (matriz adjacência)

Grafos: caminhos (matriz adjacência) Grafos: caminhos (matriz adjacência) Algoritmos e Estruturas de Dados 2 Graça Nunes 1 O problema do menor caminho Um motorista deseja encontrar o caminho mais curto possível entre duas cidades do Brasil

Leia mais

Teoria dos Grafos Aula 6

Teoria 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 mais

Joaquim J. Júdice. Pedro C. Martins. Marta B. Pascoal. Jorge P. Santos OPTIMIZAÇÃO EM REDES. Departamento de Matemática Universidade de Coimbra

Joaquim J. Júdice. Pedro C. Martins. Marta B. Pascoal. Jorge P. Santos OPTIMIZAÇÃO EM REDES. Departamento de Matemática Universidade de Coimbra Joaquim J Júdice Pedro C Martins Marta B Pascoal Jorge P Santos OPTIMIZAÇÃO EM REDES Departamento de Matemática Universidade de Coimbra 006 Conteúdo Introdução Alguns Problemas de Optimização em Redes

Leia mais

BC-0506: Comunicação e Redes Algoritmos em Grafos

BC-0506: Comunicação e Redes Algoritmos em Grafos BC-0506: Comunicação e Redes Algoritmos em Grafos Santo André, 2Q2011 1 Parte 1: Algoritmos de Busca Rediscutindo: Representações em Grafos Matriz de Adjacências Matriz de Incidências Lista de Adjacências

Leia mais

BCC204 - Teoria dos Grafos

BCC204 - 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 mais

Teoria dos Grafos. Edson Prestes

Teoria 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 mais

Percursos e Conectividade em Grafos Depth-First Search. DFS: Depth-First Search (pesquisa em profundidade)

Percursos e Conectividade em Grafos Depth-First Search. DFS: Depth-First Search (pesquisa em profundidade) Percursos e Conectividade em Grafos Depth-First Search Fernando Lobo Algoritmos e Estrutura de Dados II 1 / 23 DFS: Depth-First Search (pesquisa em profundidade) Assim que se descobre um nó, começa-se

Leia mais

A-Graph: Uma ferramenta computacional de suporte para o ensino-aprendizado da disciplina Teoria dos Grafos e seus Algoritmos

A-Graph: Uma ferramenta computacional de suporte para o ensino-aprendizado da disciplina Teoria dos Grafos e seus Algoritmos A-Graph: Uma ferramenta computacional de suporte para o ensino-aprendizado da disciplina Teoria dos Grafos e seus Algoritmos Luis Arturo Pérez Lozada 1 1 Centro de Matemática, Computação e Cognição Universidade

Leia mais

Teoria dos Grafos Aula 5

Teoria 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 mais

Análise e Síntese de Algoritmos. Revisão CLRS, Cap. 7-10

Análise e Síntese de Algoritmos. Revisão CLRS, Cap. 7-10 Análise e Síntese de Algoritmos Revisão CLRS, Cap. 7-10 Contexto Revisão Algoritmos e complexidade Notação Fundamentos: somatórios, recorrências, etc. Exemplos de algoritmos Ordenação Procura Selecção

Leia mais

Aula 21: Roteamento em Redes de Dados

Aula 21: Roteamento em Redes de Dados Aula : Roteamento em Redes de Dados Slide Redes de Pacotes Comutados Mensagens dividas em Pacotes que são roteados ao seu destino PC PC PC Rede de Pacotes PC PC PC PC Buffer Pacote Comutado Slide Roteamento

Leia mais

Algoritmos e Estrutura de Dados. Aula 13 Estrutura de Dados: Árvores de Pesquisa Binária Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Aula 13 Estrutura de Dados: Árvores de Pesquisa Binária Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 13 Estrutura de Dados: Árvores de Pesquisa Binária Prof. Tiago A. E. Ferreira Introdução Uma árvore de pesquisa binária são estruturas de dados que admitem operações

Leia mais

Grafos Procura (1) AED (IST/DEEC) 44. Grafos Procura (2) Procurar em grafos é equivalente a percorrer labirintos

Grafos Procura (1) AED (IST/DEEC) 44. Grafos Procura (2) Procurar em grafos é equivalente a percorrer labirintos rafos Procura () Algumas propriedades simples em grafos são fáceis de determinar, independentemente da ordem pela qual se examinam as arestas. Ex: grau de todos os vértices. Outras propriedades estão associadas

Leia mais

Pesquisa Operacional Programação em Redes

Pesquisa Operacional Programação em Redes Pesquisa Operacional Programação em Redes Profa. Alessandra Martins Coelho outubro/2013 Modelagem em redes: Facilitar a visualização e a compreensão das características do sistema Problema de programação

Leia mais

Aula 20. Roteamento em Redes de Dados. Eytan Modiano MIT

Aula 20. Roteamento em Redes de Dados. Eytan Modiano MIT Aula 20 Roteamento em Redes de Dados Eytan Modiano MIT 1 Roteamento Deve escolher rotas para vários pares origem, destino (pares O/D) ou para várias sessões. Roteamento datagrama: a rota é escolhida para

Leia mais

IES-300. Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br

IES-300. Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br IES-300 Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br Teste de Caixa Branca 2 Teste de Componentes: Caixa Branca Teste de Caixa Branca Grafo de Fluxo de

Leia mais

Cap. 2 Conceitos Básicos em Teoria dos Grafos

Cap. 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 mais

Testes Baseados na Implementação. (fluxo de controle) Baseado em notas de aula da profa. Eliane Martins

Testes Baseados na Implementação. (fluxo de controle) Baseado em notas de aula da profa. Eliane Martins Testes Baseados na Implementação (fluxo de controle) Baseado em notas de aula da profa. Eliane Martins 1 Tópicos O que é Grafo de fluxo de controle Critérios de cobertura 2 Referências B.Beizer R.Binder

Leia mais

Teoria da Complexidade

Teoria da Complexidade handout.pdf June 5, 0 Teoria da Complexidade Cid C. de Souza / IC UNICAMP Universidade Estadual de Campinas Instituto de Computação o semestre de 0 Revisado por Zanoni Dias Autor Prof. Cid Carvalho de

Leia mais

Algoritmos em Grafos: Caminho Mínimo

Algoritmos em Grafos: Caminho Mínimo Algoritmos em Grafos: Caminho Mínimo Letícia Rodrigues Bueno UFABC Problema 2: Menor caminho entre duas cidades Dado um mapa de cidades, contendo as distâncias entre cidades, qual o menor caminho entre

Leia mais

Redes de Computadores. Camada de Aplicação Teoria de Redes Complexas: Conceitos Básicos em Grafos

Redes de Computadores. Camada de Aplicação Teoria de Redes Complexas: Conceitos Básicos em Grafos Redes de Computadores Camada de Aplicação Teoria de Redes Complexas: Conceitos Básicos em Grafos Introdução Como as coisas estão conectadas? Redes! A network is a set of vertices or nodes provided with

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca Árvores Binárias de Busca Uma Árvore Binária de Busca T (ABB) ou Árvore Binária de Pesquisa é tal que ou T = 0 e a árvore é dita vazia ou seu nó contém uma chave e: 1. Todas as chaves da sub-árvore esquerda

Leia mais

ESTRUTURAS DE DADOS II prof. Alexandre César Muniz de Oliveira

ESTRUTURAS DE DADOS II prof. Alexandre César Muniz de Oliveira ESTRUTURAS DE DADOS II prof. Alexandre César Muniz de Oliveira 1. Grafos 2. Ordenação 3. Busca Sugestão bibliográfica: E STRUTURAS DE DADOS USANDO C Aaron M. Tenenbaum, et alli DATA STRUCTURES AND ALGORITHMS

Leia mais

Melhores momentos AULA 14

Melhores momentos AULA 14 Melhores momentos AULA Problema O algoritmo de Dijkstra resolve o problema da SPT: Dado um vértice s de um digrafo com custos não-negativos nos arcos, encontrar uma SPT com raiz s 5 5 5 Simulação 5 Simulação

Leia mais

Programação Dinâmica: Algoritmo de Bellman-Ford

Programação Dinâmica: Algoritmo de Bellman-Ford Programação Dinâmica: Algoritmo de Bellman-Ford César Garcia Daudt Caio Licks Pires de Miranda Instituto de Informática Universidade Federal do Rio Grande do Sul 22/11/2010 Resumo Este artigo se propõe

Leia mais

2 Problema das p-medianas

2 Problema das p-medianas 2 Problema das p-medianas 2.1 Definição O PMNC é definido da seguinte forma: determinar quais p facilidades (p m, onde m é o número de pontos onde podem ser abertas facilidades) devem obrigatoriamente

Leia mais

Complexidade de Algoritmos. Edson Prestes

Complexidade de Algoritmos. Edson Prestes Edson Prestes Idéias básicas Um algoritmo guloso seleciona, a cada passo, o melhor elemento pertencente a entrada. Verifica se ele é viável - vindo a fazer parte da solução ou não. Após uma seqüência de

Leia mais

PERT Charts, para gestão de projectos

PERT Charts, para gestão de projectos PERT Charts, para gestão de projectos Projectos complexos são compostos por uma serie de tarefas, algumas das quais têm que ser executadas sequêncialmente, enquanto outras podem ser excutadas em paralelo

Leia mais

Teoria dos Grafos. Edson Prestes

Teoria dos Grafos. Edson Prestes Edson Prestes Introdução Automorfismo Um automorfismo de um grafo G é um isomorfismo de G para si próprio. Os automorfismos de G são as permutações de V(G) que podem ser aplicadas a ambas as linhas e colunas

Leia mais

Algoritmos e Estruturas de Dados

Algoritmos e Estruturas de Dados Introdução aos Algoritmos e Estruturas de Dados 2 o Teste - A Ano lectivo: 2010/2011 2 o Semestre RESOLUÇÃO DO 2 o TESTE Grupo I (2.0 + 2.5 + 2.0 = 6.5 val.) I.a) Considere os tipos enum ocasiao e Presente

Leia mais

Estruturas de Dados Árvores

Estruturas de Dados Árvores Estruturas de Dados Árvores Prof. Eduardo Alchieri Árvores (introdução) Importância de estruturas unidimensionais ou lineares (vetores e listas) é inegável Porém, estas estruturas não são adequadas para

Leia mais

Grafos: componentes fortemente conexos, árvores geradoras mínimas

Grafos: 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 mais

Espaços vectoriais com produto interno. ALGA 2007/2008 Mest. Int. Eng. Biomédica Espaços vectoriais com produto interno 1 / 15

Espaços vectoriais com produto interno. ALGA 2007/2008 Mest. Int. Eng. Biomédica Espaços vectoriais com produto interno 1 / 15 Capítulo 6 Espaços vectoriais com produto interno ALGA 2007/2008 Mest. Int. Eng. Biomédica Espaços vectoriais com produto interno 1 / 15 Definição e propriedades Seja V um espaço vectorial real. Chama-se

Leia mais

INSTITUTO SUPERIOR TÉCNICO Análise e Síntese de Algoritmos. RESOLUÇÃO DO 2 o TESTE

INSTITUTO SUPERIOR TÉCNICO Análise e Síntese de Algoritmos. RESOLUÇÃO DO 2 o TESTE INSTITUTO SUPERIOR TÉCNICO Análise e Síntese de Algoritmos Ano Lectivo de 2006/2007 2 o Semestre RESOLUÇÃO DO 2 o TESTE I. (2,0+2,0+2,0 = 6,0 val.) 1) Calcule o valor óptimo da função objectivo e o respectivo

Leia mais

Roteamentos AULA ... META. Introduzir alguns problemas de roteamento. OBJETIVOS. Ao final da aula o aluno deverá ser capaz de:

Roteamentos AULA ... META. Introduzir alguns problemas de roteamento. OBJETIVOS. Ao final da aula o aluno deverá ser capaz de: Roteamentos AULA META Introduzir alguns problemas de roteamento. OBJETIVOS Ao final da aula o aluno deverá ser capaz de: Distinguir circuito euleriano e ciclo hamiltoniano; Obter um circuito euleriano

Leia mais

DEPARTAMENTO DE TELEMÁTICA

DEPARTAMENTO DE TELEMÁTICA DEPARTAMENTO DE TELEMÁTICA FACULDADE DE ENGENHARIA ELÉTRICA E DE COMPUTAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS OTIMIZAÇÃO LINEAR Teoria dos Grafos e Fluxos em Redes Autor: Tiago Agostinho de Almeida 1 I.

Leia mais

Árvores UFES. Teoria dos Grafos. CC/EC/Mestrado

Árvores UFES. Teoria dos Grafos. CC/EC/Mestrado Árvores Árvores Grafo Acíclico: não possui ciclos Árvores Grafo Acíclico: não possui ciclos Uma árvore é um grafo conexo acíclico Árvores Grafo Acíclico: não possui ciclos Uma árvore é um grafo conexo

Leia mais

Limitada Uma Pesquisa Algorítmica

Limitada Uma Pesquisa Algorítmica Decomposição em Árvore de Grafos com Largura Limitada Uma Pesquisa Algorítmica Luis Eduardo Ximenes Carvalho Departamento de Ciência da Computação - DC/UFC Universidade Federal do Ceará Fortaleza, CE,

Leia mais

7 - Análise de redes Pesquisa Operacional CAPÍTULO 7 ANÁLISE DE REDES. 4 c. Figura 7.1 - Exemplo de um grafo linear.

7 - Análise de redes Pesquisa Operacional CAPÍTULO 7 ANÁLISE DE REDES. 4 c. Figura 7.1 - Exemplo de um grafo linear. CAPÍTULO 7 7 ANÁLISE DE REDES 7.1 Conceitos Básicos em Teoria dos Grafos Diversos problemas de programação linear, inclusive os problemas de transporte, podem ser modelados como problemas de fluxo de redes.

Leia mais

Ata da resolução de exercício

Ata da resolução de exercício Ata da resolução de exercício Exercício : 6.-3 Aluno: Paulo Gurgel Pinheiro pinheiro@ic.unicamp.br Disciplina: Complexidade de Algoritmos - MO47 Data: 0 de Maio de 009 Enuciado exercício 6.-3 Vamos supor

Leia mais

Ordenação em tempo linear

Ordenação em tempo linear Ordenação em tempo linear CLRS cap 8 Algoritmos p. 1 Ordenação: limite inferior Problema: Rearranjar um vetor A[1..n] de modo que ele fique em ordem crescente. Existem algoritmos que consomem tempo O(n

Leia mais

Fluxo em Redes. http://www.ime.usp.br/~pf/flows/ Paulo Feofiloff

Fluxo em Redes. http://www.ime.usp.br/~pf/flows/ Paulo Feofiloff Fluxo em Redes http://www.ime.usp.br/~pf/flows/ Paulo Feofiloff Departamento de Ciência da Computação Instituto de Matemática e Estatística Universidade de São Paulo 15/11/2013 Prefácio Estas notas de

Leia mais

Análise de Redes de Transportes. Útil também para várias outras áreas além de Transportes!

Análise de Redes de Transportes. Útil também para várias outras áreas além de Transportes! Análise de Redes de Transportes Útil também para várias outras áreas além de Transportes! Roteiro da apresentação! Conceitos e definições! Caminho mínimo! Árvore de caminhos mínimos! Introdução ao problema

Leia mais

Analise o código abaixo:

Analise o código abaixo: Recursão - introdução Analise o código abaixo: 1 # include 2 # include 3 int Fatorial ( int x) 4 int k, s =1; for (k =0;k

Leia mais

Pointer Jumping. odg(v) e idg(v): graus de saída e entrada do vértice v V. um vértice r tal que. O vértice r é dita raíz de T

Pointer Jumping. odg(v) e idg(v): graus de saída e entrada do vértice v V. um vértice r tal que. O vértice r é dita raíz de T Pointer Jumping T = (V,E) : árvore direcionada odg(v) e idg(v): graus de saída e entrada do vértice v V um vértice r tal que v V-{r}, odg(v) = 1, odg(r)=0 v V-{r}, um caminho de v a r O vértice r é dita

Leia mais

15.053 Quinta-feira, 14 de março. Introdução aos Fluxos de Rede Handouts: Notas de Aula

15.053 Quinta-feira, 14 de março. Introdução aos Fluxos de Rede Handouts: Notas de Aula 15.053 Quinta-feira, 14 de março Introdução aos Fluxos de Rede Handouts: Notas de Aula 1 Modelos de Rede Modelos de programação linear que exibem uma estrutura muito especial. Podem utilizar essa estrutura

Leia mais

Introdução à Teoria dos Grafos (MAC-5770) IME-USP Depto CC Profa. Yoshiko. Capítulo 3

Introdução à Teoria dos Grafos (MAC-5770) IME-USP Depto CC Profa. Yoshiko. Capítulo 3 Introdução à Teoria dos Grafos (MAC-5770) IME-USP Depto CC Profa. Yoshiko Capítulo 3 Árvores Problema: Suponha que numa cidade haja n postos telefônicos. Para que seja sempre possível haver comunicação

Leia mais

Análise e Síntese de Algoritmos. Emparelhamento de Cadeias de Caracteres CLRS, Cap. 32

Análise e Síntese de Algoritmos. Emparelhamento de Cadeias de Caracteres CLRS, Cap. 32 Análise e Síntese de Algoritmos Emparelhamento de Cadeias de Caracteres CLRS, Cap. 32 Contexto Revisão Algoritmos em Grafos Programação Linear Programação Dinâmica Algoritmos Greedy Emparelhamento de Cadeias

Leia mais

Teoria dos Grafos. Menor Caminho com Origem Única. Menor Caminho com Origem Única. Menor Caminho com Origem Única. Exemplo de Menor Caminho

Teoria dos Grafos. Menor Caminho com Origem Única. Menor Caminho com Origem Única. Menor Caminho com Origem Única. Exemplo de Menor Caminho Menor Caminho com Origem Única Menor Caminho de Origem Única Problema: encontrar o caminho, mai crto poíel, entre Campina Grande e Natal. Sponha qe temo m mapa com toda a etrada do Nordete, com a ditância

Leia mais

Algoritmos e Estruturas de Dados

Algoritmos 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 mais

Técnicas de Teste de Software

Técnicas de Teste de Software Técnicas de Teste de Software Fabrício Sousa fabricio@uesb.br Projeto de Caso de Teste Conjunto de técnicas para criação de casos de testes Série de casos de testes que tem grande probabilidade de encontrar

Leia mais

05 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 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 mais

Teoria dos Grafos. Edson Prestes

Teoria dos Grafos. Edson Prestes Edson Prestes Árvores Algoritmo de Kruskal O algoritmo de Kruskal permite determinar a spanning tree de custo mínimo. Este custo corresponde à soma dos pesos (distância, tempo, qualidade,...) associados

Leia mais

Grafos: algoritmos de busca

Grafos: 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 mais

Pesquisa Sequencial e Binária

Pesquisa Sequencial e Binária Pesquisa Sequencial e Binária Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 20 Algoritmos e Estruturas de Dados I Pesquisa em Memória Primária Introdução - Conceitos Básicos Pesquisa Sequencial

Leia mais

Problema do Carteiro Chinês

Problema do Carteiro Chinês CENTRO DE CIÊNCIAS EXATAS DEPARTAMENTO DE COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Problema do Carteiro Chinês Alunos: André Ricardo Gonçalves Luiz Gustavo Andrade dos Santos Paulo Roberto Silla Profa. Linnyer

Leia mais

Teoria da Computação - Programação OCaml Ficha de exercícios

Teoria da Computação - Programação OCaml Ficha de exercícios Teoria da Computação - Programação OCaml Ficha de exercícios Simão Melo de Sousa Em parte, estes exercícios baseam-se nas fichas práticas retiradas do site OCaml Hump 1 Aritmética Exercício 1 (Fibbonacci)

Leia mais

Caminhos Mais Curtos Fluxo Máximo Árvores Geradoras Mínimas

Caminhos Mais Curtos Fluxo Máximo Árvores Geradoras Mínimas Caminhos Mais Curtos Fluxo Máximo Árvores Geradoras Mínimas Túlio Toffolo www.toffolo.com.br Marco Antônio Carvalho marco.opt@gmail.com BCC0 Aula 1 Algoritmos e Programação Avançada Plano da Aula Caminhos

Leia mais

Teoria dos Grafos Aula 24

Teoria dos Grafos Aula 24 Teoria dos Grafos Aula 24 Aula passada Caminho mais curto entre todos os pares Algortimo de Floyd Warshall Programação dinâmica Aula de hoje Caminho mais curto em grafos Algoritmo de Bellman Ford Algoritmo

Leia mais

PROBLEMA DO CARTEIRO CHINÊS

PROBLEMA DO CARTEIRO CHINÊS Introdução à Teoria dos Grafos Bacharelado em Ciência da Computação UFMS, 005 PROBLEMA DO CARTEIRO CHINÊS Resumo A teoria dos grafos teve seu início há cerca de 50 anos e aplicações datadas daquela época

Leia mais

Caminho Mínimo de Fonte Única em Grafos com Pesos Negativos Letícia Rodrigues Bueno

Caminho Mínimo de Fonte Única em Grafos com Pesos Negativos Letícia Rodrigues Bueno Caminho Mínimo de Fonte Única em Grafos com Pesos Negativos Letícia Rodrigues Bueno UFABC Problemas de Caminho Mínimo Caminho mínimo de fonte única: algoritmo de Dijsktra; Problemas de Caminho Mínimo Caminho

Leia mais

Técnicas de Otimização Combinando Alocação de Banco de Capacitores e Reconfiguração de Rede Visando Minimização de Perdas Técnicas

Técnicas de Otimização Combinando Alocação de Banco de Capacitores e Reconfiguração de Rede Visando Minimização de Perdas Técnicas Universidade Estadual de Campinas - Unicamp Faculdade de Engenharia Elétrica e de Computação - FEEC Comissão de Pós-graduação - CPG IA342 Tópicos em Otimização de Sistemas Aluno: Antonio César Polo Matricula:

Leia mais

Colectânea de Problemas Análise e Síntese de Algoritmos

Colectânea de Problemas Análise e Síntese de Algoritmos Colectânea de Problemas Análise e Síntese de Algoritmos João Marques Silva Departamento de Engenharia Informática Instituto Superior Técnico (IST)/INESC-ID e-mail: joao.marques.silva@dei.ist.utl.pt Vers~ao

Leia mais

Análise de complexidade

Análise de complexidade Introdução Algoritmo: sequência de instruções necessárias para a resolução de um problema bem formulado (passíveis de implementação em computador) Estratégia: especificar (definir propriedades) arquitectura

Leia mais

IA: Busca Competitiva. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

IA: Busca Competitiva. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br IA: Busca Competitiva Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Sumário Introdução Árvores de Jogos Minimax Antecipação Limitada Poda Alfa-beta Introdução Jogos têm sido continuamente uma importante

Leia mais

Algoritmos de ordenação Heapsort

Algoritmos de ordenação Heapsort Algoritmos de ordenação Heapsort Sumário Introdução A estrutura de dados heap Definição Manutenção da propriedade de heap A construção de um heap O algoritmo heapsort Introdução Características do heapsort

Leia mais

Teoria dos Grafos Aula 8

Teoria 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 mais

UM TEOREMA QUE PODE SER USADO NA

UM TEOREMA QUE PODE SER USADO NA UM TEOREMA QUE PODE SER USADO NA PERCOLAÇÃO Hemílio Fernandes Campos Coêlho Andrei Toom PIBIC-UFPE-CNPq A percolação é uma parte importante da teoria da probabilidade moderna que tem atraído muita atenção

Leia mais

Resolução de Problemas Com Procura. Capítulo 3

Resolução de Problemas Com Procura. Capítulo 3 Resolução de Problemas Com Procura Capítulo 3 Sumário Agentes que resolvem problemas Tipos de problemas Formulação de problemas Exemplos de problemas Algoritmos de procura básicos Eliminação de estados

Leia mais

TEORIA DOS GRAFOS UMA APLICAÇÃO DE LOGÍSTICA PARA O ENSINO MÉDIO. Profº M. Sc. Marcelo Mazetto Moala

TEORIA DOS GRAFOS UMA APLICAÇÃO DE LOGÍSTICA PARA O ENSINO MÉDIO. Profº M. Sc. Marcelo Mazetto Moala TEORIA DOS GRAFOS UMA APLICAÇÃO DE LOGÍSTICA PARA O ENSINO MÉDIO mmmoala@fafica.br Breve Histórico Leonhard Euler (Matemático Suíço) - Pai da Teoria dos Grafos Nascimento de abril de 77 / 8 de setembro

Leia mais

Bacharelado em Ciência da Computação Matemática Discreta

Bacharelado em Ciência da Computação Matemática Discreta Bacharelado em Ciência da Computação Matemática Discreta Prof. Diego Mello da Silva Instituto Federal de Minas Gerais - Campus Formiga 19 de fevereiro de 2013 diego.silva@ifmg.edu.br (IFMG) Matemática

Leia mais

Técnicas de Computação Paralela Capítulo III Design de Algoritmos Paralelos

Técnicas de Computação Paralela Capítulo III Design de Algoritmos Paralelos Técnicas de Computação Paralela Capítulo III Design de Algoritmos Paralelos José Rogado jose.rogado@ulusofona.pt Universidade Lusófona Mestrado Eng.ª Informática e Sistemas de Informação 2013/14 Resumo

Leia mais

Árvore Binária de Busca

Árvore Binária de Busca Árvore Binária de Busca 319 Árvore Binária de Busca! construída de tal forma que, para cada nó:! nós com chaves menores estão na sub-árvore esquerda! nós com chaves maiores (ou iguais) estão na subárvore

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos Complexidade de Algoritmos Classes de Complexidades de Problemas Prof. Osvaldo Luiz de Oliveira Estas anotações devem ser complementadas por apontamentos em aula. Tempo polinomial Um algoritmo A, com entrada

Leia mais

COMPLEMENTAÇÃO DE CARGA HORÁRIA: 1 aula de 1h40min PLANO DE ENSINO

COMPLEMENTAÇÃO DE CARGA HORÁRIA: 1 aula de 1h40min PLANO DE ENSINO CURSO: Graduação em Matemática 1º semestre de 2016 DISCIPLINA: PESQUISA OPERACIONAL 2 PROFESSOR(ES): Vincent Gérard Yannick Guigues & Elivelton Ferreira Bueno CARGA HORÁRIA: 60h PRÉ-REQUISITO: CÁLCULO

Leia mais

O Problema do Fluxo Máximo de Custo Mínimo e suas Aplicações no Transporte de Recursos em Sistemas Distribuídos

O Problema do Fluxo Máximo de Custo Mínimo e suas Aplicações no Transporte de Recursos em Sistemas Distribuídos O Problema do Fluxo Máximo de Custo Mínimo e suas Aplicações no Transporte de Recursos em Sistemas Distribuídos Luís Fernando Schultz Xavier da Silveira Filipe Hoss Lellis 27 de Novembro de 2008 Resumo

Leia mais

ALGORITMOS E ESTRUTURAS DE DADOS CES-11 CES-11 CES-11

ALGORITMOS E ESTRUTURAS DE DADOS CES-11 CES-11 CES-11 ALGORITMOS E ESTRUTURAS DE DADOS Prof. Paulo André Castro pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac IECE - ITA Uma árvore binária é: uma árvore vazia; ou uma árvore onde qualquer

Leia mais

Sistemas Operativos: Deadlocks

Sistemas Operativos: Deadlocks Sistemas Operativos: Deadlocks Pedro F. Souto (pfs@fe.up.pt) March 30, 2012 Deadlocks Um deadlock é uma situação em que 2 ou mais processos ficam bloqueados indefinidamente pode ser uma race condition

Leia mais

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste material e a resolução (por parte do aluno) de todos os

Leia mais

Divisão e Conquista: Par de Pontos mais Próximo

Divisão e Conquista: Par de Pontos mais Próximo Divisão e Conquista: Par de Pontos mais Próximo Fernando Lobo Algoritmos e Estrutura de Dados II 1 / 18 Divisão e Conquista (cont.) Problema: Dado um conjunto de pontos no plano, obter o par de pontos

Leia mais

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2 FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Projeto e Análise de Algoritmos II Lista de Exercícios 2 Prof. Osvaldo. 1. Desenvolva algoritmos para as operações abaixo e calcule a complexidade

Leia mais

Lista de Exercícios Fluxograma, Estruturas de Sequência e Decisão Prof: Yuri Frota

Lista de Exercícios Fluxograma, Estruturas de Sequência e Decisão Prof: Yuri Frota Lista de Exercícios Fluxograma, Estruturas de Sequência e Decisão Prof: Yuri Frota 1) Indique Verdadeiro ou Falso a) Uma variável é uma posição na memória do computador que pode receber diversos valores

Leia mais

1.3 Isomorfismo 12 CAP. 1 CONCEITOS BÁSICOS

1.3 Isomorfismo 12 CAP. 1 CONCEITOS BÁSICOS 12 CAP. 1 CONCEITOS BÁSICOS I i I j. Essa relação de adjacência define um grafo com conjunto de vértices {I 1,...,I k }. Esse é um grafo de intervalos. Faça uma figura do grafo definido pelos intervalos

Leia mais

Análise e Complexidade de Algoritmos

Análise e Complexidade de Algoritmos Análise e Complexidade de Algoritmos Uma visão de Intratabilidade, Classes P e NP - redução polinomial - NP-completos e NP-difíceis Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com

Leia mais

ESTRUTURAS DE DADOS II

ESTRUTURAS DE DADOS II ESTRUTURAS DE DADOS II Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Conteúdo Programático 1. Introdução

Leia mais