Я пытаюсь реализовать алгоритм Dijsktra в C#.Алгоритм Dijsktra в C#
У моего кода есть ошибка в функции, чтобы найти вершину с минимальным значением расстояния, из набора вершин, еще не включенных в кратчайшее дерево путей.
Ошибка: использование неназначенной локальной переменной min_index. и это происходит по возврату min_index;
Можете ли вы сказать мне, что я сделал неправильно, пожалуйста?
Вот код функции =
// Utility function to find the vertex with minimum distance value, from
// the set of vertices not yet included in shortest path tree
int minDistance (int[] dist, bool[] sptSet)
{
// Initialize min value
int min = INT_MAX, min_index;
for (int v = 0; v < V; v++)
{
if (sptSet[v] == false && dist[v] <= min)
{
min = dist[v];
min_index = v;
}
}
return min_index;
}
Спасибо.
Это не ответ на ваш вопрос, но лучше сказать '! SptSet [v]' вместо 'sptSet [v] == false'. – ahruss