找到从顶点u到v穿过顶点的最短路径w?

Pra*_*han 7 algorithm graph dijkstra shortest-path

在具有非负边缘权重的有向图中,我可以使用dijkstra来轻松找到从u到v的最短路径.但是对Dijkstra有任何简单的调整,以便我可以找到从u到v通过给定顶点w的最短路径.还是其他任何算法建议?

Bet*_*eta 8

找到从u到w的最短路径,然后是从w到v的最短路径.

  • @Beta从问题中我不清楚OP是什么,但从我看到的每个定义,路径都不重复顶点.通常,如果允许顶点重复,则称为*walk*. (2认同)

Mu *_*iao 5

  1. 找到从u到w的最短路径
  2. 找到从w到v的最短路径

然后u-> w-> v是最短的路径.

您可以通过运行Dijkstra两次来完成,但您也可以应用Floyd-Warshall算法.