Trabalho PAA - PUC-Rio

Propaganda
Trabalho de Projeto e Análise de Algoritmos
Motivação: comparar os diferentes tempos de execução de dois algoritmos para
processamento de grafos, de ordens de complexidade diferentes, à medida que altera-se
o tamanho da entrada (n, m).
Para construir um grafo G= (V,E) que será utilizado no trabalho, fixamos o número de
vértices n e para cada par de vértices u e v, com u diferente de v, incluímos a aresta uv
1
no grafo com probabilidade
. Utilize um gerador de números aleatórios para este
n
propósito.
1. Projete dois algoritmos que preencham uma matriz dist[n x n], na qual o
valor da entrada dist(x,y) é o valor da distância entre os vértices x e y.
 O primeiro algoritmo deve analisar cada par de vértices, calcular
a distância entre eles e colocar o valor em dist[n x n];
 O segundo algoritmo deve, para cada vértice, realizar uma busca
em largura (BFS) e, a cada vértice atingido, colocar o valor da
distância percorrida em dist[n x n]
2. Calcule a complexidade de tempo de cada um dos algoritmos
3. Execute os dois algoritmos com diferentes valores de entrada n (n = 25,
50, 100, 200, 400...) e registre o tempo de execução dos algoritmo para
cada entrada. Coloque 3 minutos como limite de tempo para cada
execução.
Entregue um relatório impresso contendo as soluções para cada um dos itens pedidos.
Data de entrega 10/10 – 23:59
O trabalho deve ser realizado em grupos de 3 alunos
Download