Por ejemplo, etiquetar el código fuente
/************ ***** ********************************
Supongamos que G=(V,E) es una dirección gráfico en el que la longitud de cada arista no es negativa y un vértice específico S se llama arista.
El problema de la ruta más corta de fuente única, o el problema de la ruta más corta, es asegurarse de que no haya nada más de S a v.
La distancia de los vértices, donde la distancia del vértice S a X se define como el problema del camino más corto de S a X. Este problema
puede resolverse utilizando el algoritmo de Dijkstra. ¡A continuación te daré el código fuente en c++! ——Autor Weiweizhu
*************************************** *** *************/
# include & ltiostream.h & gt
void main()
{
int infinity=100,j,I,n,k,t,**w,*s,*p,*d;
cout & lt& lt"Ingresa el valor de n:";
CIN & gt;& gtn;
cout & lt& ltendl
d = new int[n];
s = nuevo int[n];
p = nuevo int[n];
w = nuevo int *[n]; (I = 0; i & ltn;i++)
for(I = 0;i<n;i++)
for(j = 0;j & ltn;j++)
CIN>>w[I][j];
for(s[0]=1,I=1;i<n;i++)
{
s[I]= 0; d[I]= w[0][I];
if(d[I]& lt; infinito)p[I]= 0;< / p>
else p[I]=-1;
}
for(I = 1;i<n;i++)
{
t = infinito; k = 1;
for(j = 1; j & ltn; j++)
if ((!s[j]& amp; & amp(d[j]& lt;t))
s[k]= 1; //Agrega S en el punto k
for(j = 1; j & ltn; j++)
Si ((!s[j]&&(d[j]>d[k]+w[k][j])
} p>
cout & lt& lt"La distancia más corta desde el punto de origen a otros vértices es la siguiente:"
for (I = 1; i<n;i++)cout & lt ;& ltd[; I]& lt;& lt" ";
}
/********
El número de vértices es n significa que el El ejemplo dado aquí es n=6
100 1 12 100 100 100
100 100 9 3 100 100
100 100 100 100 5 100
100 100 4 100 13 15
100 100 100 100 100 4
100 100 100 100 100 100
Proporcione ejemplos específicos Consulte " Técnicas y análisis de diseño de algoritmos" en la página 148 de Electronic Industry Press.
************/