具有锁定和未锁定边的无向图中的最小路径

时间:2013-06-24 23:46:52

标签: algorithm data-structures graph graph-theory graph-algorithm

给定具有正权重的无向图,有两种边:锁定边和未锁定边。确定给定边缘是锁定边缘还是未锁定边缘需要O(1)。

  1. 对于给定的两个顶点 s t 和一个正数 k = O(1),我怎样才能找到 s t 之间的最短路径,其中包含最多 k 锁定边缘?

  2. 对于给定的两个顶点 s t 和一个正数 k = O(1),我怎样才能找到 s t 之间的最短路径,其中包含完全 k 锁定的边缘?

  3. 我不确定如何在此图上运行Dijkstra算法以找到给定顶点之间的最短路径,以及如何将无向图转换为定向< / strong>一个。

1 个答案:

答案 0 :(得分:5)

您可以通过获取图表的k副本来解决您的两个问题,例如G_0,...,G_k,并修改每个图形,以便G_i中的锁定边缘vw变为来自u的边缘在G_ {i + 1}中G_i到v,在G_ {i + 1}中从G_i到v到u。然后,您可以在G_0中从根开始执行单源最短路径。通过读取G_k中目标的距离来解决第二个查询,而通过读取任何G_i到目标的最小距离来解决第一个查询。