clipped from: www.cauoc.com   
Krusty
Residente
****
Desconectado Desconectado


Cursando: UOCc

Mensajes: 260



Ver%20Perfil Email Mensaje%20Privado%20%28Desconectado%29
« Respuesta #36 : 14:50, 28 Noviembre 2006, » Responder%20con%20cita

Sobre el uno, lo primero en lo que pensé es en un árbol, pero luego me di cuenta de que pueden existir módulos que sean llamados desde más de un padre distinto, por tanto hay ciclos y no puede ser un árbol. Así que coincido con todos, es un grafo.

En cuanto al algoritmo, descartaría los de Dijkstra, Prim, Krustal y Floid por que están relacionados con distancias mínimas y árboles generadores y no con recorridos.

Para mi está claro que piden un recorrido y según los intragables apuntes hay tres tipos de recorridos (aunque sólo se extienden en el último): en profundidad, en anchura y topológico (de los otros se habla en la asignatura de Matemática Discreta).

He visto que todo el mundo se decanta por un recorrido topológico, y la verdad es que viendo el ejemplo de las tareas que ponen en los apuntes, parecería que lo que tenemos es un recorrido topológico inverso. Sin embargo, en los apuntes pone que el recorrido en ordenación topológica
sólo es aplicable en grafos dirigidos acíclicos.

Yo creo que en este grafo puede haber ciclos, por tanto se fastidia el asunto y no puede ser. De los dos recorridos que quedan, creo que el de profundidad (BFS) podría servir. Es el que se usa para problemas de coloración (asignatura de Matemática Discreta) y esto tiene pinta de ser algo así.

Edito: Después de ver algunos ejemplos, me doy cuenta que el BFS no sirve para este problema. Lo único que se me ocurre es que sea el algoritmo topológico y que en realidad no haya ciclos. Ese sería el caso si no hubiera recursividad (un módulo hijo no puede llamar a uno de sus parientes o a si mismo)

¿Opiniones?
« Última modificación: 15:16, 28 Noviembre 2006, por Krusty » Reportar al moderador   En línea