Graph 网络中最近的医院

Graph 网络中最近的医院,graph,graph-algorithm,Graph,Graph Algorithm,我有一个代表城市的图表。有些是医院。图形是连通的 我正在寻找一种算法,它将为我提供从任何给定节点到最近医院的路径(甚至距离)。 人们可以考虑计算所有最短路径,但我认为它们可能是一种更聪明的方法 谢谢我想你需要看看。 这是算法 let dist be a |V| × |V| array of minimum distances initialized to ∞ (infinity) for each vertex v dist[v][v] ← 0 for each edge (u,v)

我有一个代表城市的图表。有些是医院。图形是连通的

我正在寻找一种算法,它将为我提供从任何给定节点到最近医院的路径(甚至距离)。

人们可以考虑计算所有最短路径,但我认为它们可能是一种更聪明的方法

谢谢

我想你需要看看。
这是算法

let dist be a |V| × |V| array of minimum distances initialized to ∞ (infinity)
for each vertex v
   dist[v][v] ← 0
for each edge (u,v)
   dist[u][v] ← w(u,v)  // the weight of the edge (u,v)
for k from 1 to |V|
   for i from 1 to |V|
      for j from 1 to |V|
         if dist[i][k] + dist[k][j] < dist[i][j] then
            dist[i][j] ← dist[i][k] + dist[k][j]
设dist为初始化为的最小距离的| V |×| V |数组∞ (无穷大)
对于每个顶点v
地区[v][v]← 0
对于每条边(u、v)
地区[u][v]← w(u,v)//边的权重(u,v)
对于从1到| V的k|
对于从1到| V的i|
对于从1到| V的j|
如果dist[i][k]+dist[k][j]

上面的算法在下面左侧的图形上执行


[1] :
参考:wikiPedia(答案开头提供了链接)
有关详细信息,请访问链接

您尝试过吗?是的,但它意味着计算所有最短路径,我错了吗?是的,但是Floyd–Warshall算法通常只提供所有顶点对之间的路径长度。因此,之后您可以根据需要对它们进行比较或使用(我的意思是根据您的目的使用结果/输出)无需担心:)但这是我们可以用于解决此问题的解决方案