Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Archivel

#1
A veces la solución es tan obvia que pasamos de ella por sencilla.

Solo tuve que declarar D y P fuera del metodo y listo  ;D ;D ;D
#2
Gracias a ti soy una experta en matematicas!! jejejeje.

Lastima que en programacion pura aun ande un poco perdida.

El algoritmo me funciona perfectamente y adaptandolo a mi trabajo tuve un problema.

La clase Grafo con la que trabajo tiene definido el metodo Grafo::floyd() como una funcion privada que ni recibe parametros ni devuelve nada, simplemente internamente calcula las estructuras D y P y listo.

El problema me viene al implementar el metodo Grafo::camino(Nodo *origen, Nodo *destino) ya que desde ese metodo no puedo acceder a las estructuras D y P de floyd().

Alguna idea?

El codigo lo tengo totalmente planteado, salvo ese "pequeño" detalle de como acceder a las estructuras D y P desde camino.

Un saludo!


EDITO: Yo no he podido usar la libreria vector del STL, ya que tengo prohibido STL.

Lo que hice fue hacer las matrices de la siguiente manera:


        int **D, **P;
        D = new int* [fils];
        for(int i=0;i<fils;i++){
                D[i] = new int [cols];
        }
        P = new int* [fils];
        for(int i=0;i<fils;i++){
                P[i] = new int [cols];
        }
#3
Hola,

En primer lugar lo siento por no haber contestado antes, se me juntan los ultimos dias del curro de verano con las asignaturas de septiembre y voy agobiadisima.

Probé el código (mil gracias ghastlyX) y pude adaptarlo a mi problema a las mil maravillas.

Mi codigo chequea el grafo para saber el numero de nodos y entre cuales de ellos existe arista y cual es su peso. A partir de ahi calcula las dos matrices a la perfeccion  ;D

Solo me queda una duda, y es en grafos mas complejos, donde el camino puede ser mas largo (ejemplo A -> C -> D -> H) como rescato ese camino a partir de la matriz?

Gracias de nuevo y un saludo!!
#4
Hola, aunque quizá esto tiene más que ver con las matematicas que la programacion en si, estoy implementando un TAD grafo y se me plantea una duda.

Tengo que programar el algoritmo de Floyd para que me de la matriz de distancias (esto ok) y la matriz de nodos.

Os expongo graficamente mi duda con la matriz de nodos, que no se me da muy bien explicarme:



Como debo inicializar las casillas de la matriz en las que pongo interrogacion?? Al no haber un camino directo entre esos nodos, no tengo claro como iniciarlizarlas y no he encontrado ningun ejemplo que me lo aclare.

Gracias por vuestra ayuda!