Me explican este codigo?
Publicado por Lalo (1 intervención) el 06/06/2006 03:55:03
void DIJKSTRA(){
int A[N][N], i, u, v, s, c, N, MAXD;
int PQ[N], dist[N], Adj[N];
for(v = 0; v < N; v++){
if(v = s)
dist[v] = 0;
else
dist[v] = MAXD;
PQ[v] = dist[v];
}
i = N-1;
while(i > 0){
for(j = 0; j < i; j++)
if(PQ[j] < PQ[i])
swap(PQ[j], PQ[i]);
u = PQ[i];
for(v = 0; v < N, A[u][v] != 0; j++){
c = dist[u] + A[u][v];
if(c < dist[v])
dist[v] = c;
}
i = i-1;
}
}
esa "s" que carajo es? y bueno maxd es la maxima distancio no?
o estoy mal? quizas entendi todo mal
int A[N][N], i, u, v, s, c, N, MAXD;
int PQ[N], dist[N], Adj[N];
for(v = 0; v < N; v++){
if(v = s)
dist[v] = 0;
else
dist[v] = MAXD;
PQ[v] = dist[v];
}
i = N-1;
while(i > 0){
for(j = 0; j < i; j++)
if(PQ[j] < PQ[i])
swap(PQ[j], PQ[i]);
u = PQ[i];
for(v = 0; v < N, A[u][v] != 0; j++){
c = dist[u] + A[u][v];
if(c < dist[v])
dist[v] = c;
}
i = i-1;
}
}
esa "s" que carajo es? y bueno maxd es la maxima distancio no?
o estoy mal? quizas entendi todo mal
Valora esta pregunta


0