PUC-Rio
Departamento de Informática
Prof. Marcus Vinicius S. Poggi de Aragão
Período: 2000.2
10 de outubro de 2000
PROJETO E ANÁLISE DE ALGORITMOS (INF 2128)
1o Trabalho de Implementação
Implemente os algoritmos dos itens onde aparece o último dígito
do seu número de matrícula (não o DV).
Todos os algoritmos abaixo devem ser testados em um número de
instâncias, de tamanhos diferentes, que permita estimar experimentalmente suas respectivas complexidades. Compare estas com a
complexidade teórica do algoritmo.
Haverá um pool de instâncias na página:
www.inf.puc-rio.br/~poggi
-
(todos) Implemente o algoritmo de busca "binária" de um elemento em uma
matriz ordenada nas linhas e nas colunas.
- (0,1,9) Implemente um algoritmo para encontrar um conjunto
independente S em um grafo orientado G=(V,E) tal que " v
Î V existe um caminho (orientado) de um vértice de S a v de
tamanho inferior ou igual a 2 (dois arcos).
- (2,3,8) Implemente um algoritmo para encontrar um circuito
Hamiltoniano em um grafo denso, i.e. G=(V,E) tal que " v,w
Î V, d(v) + d(w) ³ n, onde d(v)= | { u | (u,v) Î E } |
(o grau de v) e n=|V|.
- (4,5) Implemente um algoritmo para encontrar um ciclo Euleriano
em um grafo G=(V,E) onde " v Î V, d(v) = 2.k para
algum k.
- (6,7) Implemente um algoritmo para encontrar o código de
Huffman para um string dado. Implemente também os algoritmos
para codificar e decodificar este string.
- (todos) Algoritmos para encontrar a árvore geradora mínima (AGM) de
um grafo G=(V,E):
-
Implemente o algoritmo de Round Robin (com lazy leftist heaps, heapify, e Union and Find).
This document was translated from LATEX by HEVEA.