0
Dijkstraアルゴリズムを使ってノード間の最短経路を見つけるグラフプログラムをC#で実行していますが、各ノード間でExcelファイルにかかる時間を書き出す必要があります。私は本当に何かを考え出したり、それに関する情報を見つけることができませんでした。これを行う方法上の任意のアイデア?ここではそのためのコードです。二つ以上の間の経過時間をカウントするあなたはストップウォッチクラスを使用することができます時間を計測するDijkstraのアルゴリズムはノード間をとる
public static void Dijkstra(int[,] graph, int source, int verticesCount)
{
int[] distance = new int[verticesCount];
bool[] shortestPathTreeSet = new bool[verticesCount];
for (int i = 0; i < verticesCount; ++i)
{
distance[i] = int.MaxValue;
shortestPathTreeSet[i] = false;
}
distance[source] = 0;
for (int count = 0; count < verticesCount - 1; ++count)
{
int u = MinimumDistance(distance, shortestPathTreeSet, verticesCount);
shortestPathTreeSet[u] = true;
for (int v = 0; v < verticesCount; ++v)
if (!shortestPathTreeSet[v] && Convert.ToBoolean(graph[u, v]) && distance[u] != int.MaxValue && distance[u] + graph[u, v] < distance[v])
distance[v] = distance[u] + graph[u, v];
}
Print(distance, verticesCount);
}