Trabalho para 2/5
O objetivo do trabalho é comparar algoritmos que calculam o fecho
convexo de um conjunto de pontos no plano.
-
Implemente o algoritmo de Jarvis e o algoritmo por varredura.
Escreva o programa mais simples possível.
Não se preocupe com interfaces gráficas.
-
Teste os seus programas no seguinte conjunto de pontos:
A B C D E F G H I J K L M N O P Q
x 3 11 6 4 5 8 1 7 9 14 10 17 15 13 3 12 16
y 9 1 8 3 15 11 6 4 7 5 13 14 2 16 12 10 8
A solução é B M L N E O G D.
Veja uma
figura
gerada por um
programa
em PostScript.
-
Compare o desempenho dos dois algoritmos em conjuntos de pontos
gerados aleatoriamente
dentro de um retângulo,
dentro de um triângulo,
dentro de um círculo,
e sobre o círculo.
Use conjuntos de 100, 1000, 10000 e 100000 pontos.
(E mais se for possível.)
Compare os tempos de cada algoritmo e
também o esforço necessário para sua implementação.
-
(opcional)
Refaça os testes do item anterior incorporando eliminação de pontos interiores.
Vale a pena eliminar pontos interiores?
O trabalho deve ser apresentado e entregue ao Esdras até o dia 2/5.
Last update:
Wed Apr 19 15:34:31 BRST 2006