Am incercat sa construiesc un algoritm de cost minim pe baza BFS si a inegalitatii triunghiului. 90% din valori sunt corecte, indiferent de input, insa uneori nu gaseste drumuri spre anumite puncte si afiseaza valoarea 0
. Spuneti-mi ce am omis va rog !!
for(i=1;i<=n;i++)
{
if(i!=1) d[i]=INF;
else d[i]=0;
}
sol[1]=1;
u=1;
for(j=1;j<=n;j++)
for(i=1;i<=n;i++)
if(a[sol[j]][i])
{
if(j!=1) if(a[sol[j]][i]+d[sol[j]]<d[i]) d[i]=a[sol[j]][i]+d[sol[j]];
if(j==1)if(a[sol[j]][i]<d[i]) d[i]=a[sol[j]][i];
u++;
sol[u]=i;
}
Nu vreau alta sursa ! Vreau doar "corectura" !
Multumesc !