У меня проблемы с решением алгоритма BellmanFord. Это метод, который должен возвращать минимальное расстояние от источника до места назначения.
public int BellmanFord(int src, int dest, Link link[])
{
int distMin = 999;
int nLinks = link.length;
if(src==dest)
{
return 0;
}
else
{
for(int i=0; i<nLinks; i++)
{
if(link[i].src==src && link[i].dest!=dest)
{
if(distMin > link[i].weight + BellmanFord(link[i].dest, dest, link))
{
distMin = link[i].weight + BellmanFord(link[i].dest, dest, link);
}
i=nLinks;
}
}
}
return distMin;
}
В основном есть следующий код, который вызывает этот метод:
for(int i=0; i<nRouter; i++)
{
distances[i] = BellmanFord(source, i, link);
}
Так что вы должныполучить массив с минимальным расстоянием до всех маршрутизаторов. Мне действительно нужна помощь! Спасибо всем, кто мне поможет: D