ADSW - Ejercicio 2 - FAQ

FAQ - Preguntas frecuentes

Ejercicio 2

Revisado: domingo 4.3.2018 8:15

¿Qué hay que entregar?

En

package es.upm.dit.adsw.ej2

Las siguientes clases

Edmonds Karp es siempre opcional, incluso si en el ejercicio 1 fue elegido por el grupo. O sea, que la decisión del ejercicio 1 puede revisarla en el ejercicio 2. En ese caso. indíquelo claramente en la memoria.

Memoria

Debe constar

Si el alumno utiliza un programa alternativo a Correlator, por ejemplo una hoja de cálculo, debe entregar una documentación equivalente: medidas, cálculos de regresión y gráficas).

Generación del grafo de pruebas

Hay que generar un grafo con N nodos.

Una forma cómoda de generar N nodos sin nombres duplicados es usar el contador como nombre, de forma que los nodos se llamen

"0", "1", "2", "3", ..., hasta N-1

Para generar enlaces entre un par de nodos aleatorios podemos usar la biblioteca de java

class Random

que incluye un método para generar un número entre 0 y N

int nextInt(int max)

Elegimos 2 nodos al azar y usamos su nombre entre 0 y N-1 para enlazarlos.

Orden de nodos y enlaces

Si se enlazan nodos que no están declarados, se puede provocar un error del tipo NullPointerException o similar. No está definido en el enunciado qué ocurre; es admisible cualquier error.

Basta cargar los nodos antes de usarlos en los enlaces para evitar esta situación de indefinición.

Casos de medida

Los valores de N deben ser suficientes para que la complejidad "se vea" en las gráficas. Entre 10 y 20 valores "sabiamente elegidos" suele ser suficiente.

Para algoritmos lineales, O(n), se usa una serie aritmética.

Para algoritmos potenciales, O(na), se usa una serie geométrica.

Métodos insuficientemente definidos

Por simplificar el ejercicio, hay múltiples situaciones que no se han definido. Cualquier resultado es aceptable y por tanto no se debe hacer pruebas de estos casos.

Antes o después ocurrirá algo, lo que sea.

Graph

BFS

Dijkstra

Edmonds Karp