tengo implementado el algoritmo pero m funciona con algunos casos y con otros no... hay algun problema en el while y en algunos grafos con ciclos por ejemplo se queda en el bucle...ayuda!!!!
(la matriz de adyacencia esta almacnada en G[][])
void dijkstra(int s, int t)
{
bool fijados[MAX_NODOS];
int min,u,v,w;
for (u=0; u<MAX_NODOS; u++) {
distancia
= 99999;
fijados = false;
}
distancia = 0;
while (not fijados[t] ) {
min = 99999;
for (u=0; u <MAX_NODOS; u++)
if (!fijados && distancia < min) {
min=distancia; v=u;
}
fijados[v] = true;
for (w=0;w<MAX_NODOS;w++)
if ( (G[v][w]>0) && !fijados[w] && distancia[w] > distancia[v] + G[v][w])
distancia[w] = distancia[v] + G[v][w];
}
}
gracias de antemano