Algorithm 在图形中重新计算最大距离的更快方法

Algorithm 在图形中重新计算最大距离的更快方法,algorithm,graph,time-complexity,shortest-path,floyd-warshall,Algorithm,Graph,Time Complexity,Shortest Path,Floyd Warshall,假设给定一个加权有向图G=V,E,有n个节点,其中p是中心节点。设C,| C |=p为中心节点集,N=V\C为非中心节点集。边eij的值为有限非负实数,如果: i来自集合N,而j来自集合P,或 i来自集合P,而j来自集合P,或 i来自集合P,而j来自集合N。 否则,如果i来自集合N,j来自集合N,则eij的值等于正无穷大 我们感兴趣的是在图G中找到所有最短距离上的最大值。我发现解决这个问题的最快算法是使用Floyd Warshall算法的简单修改,该算法在On2p中运行。下面是简单的伪代码: F

假设给定一个加权有向图G=V,E,有n个节点,其中p是中心节点。设C,| C |=p为中心节点集,N=V\C为非中心节点集。边eij的值为有限非负实数,如果:

i来自集合N,而j来自集合P,或 i来自集合P,而j来自集合P,或 i来自集合P,而j来自集合N。 否则,如果i来自集合N,j来自集合N,则eij的值等于正无穷大

我们感兴趣的是在图G中找到所有最短距离上的最大值。我发现解决这个问题的最快算法是使用Floyd Warshall算法的简单修改,该算法在On2p中运行。下面是简单的伪代码:

FOR ALL k FROM the set C DO
  FOR ALL i FROM the set V DO
    FOR ALL j FROM the set V DO 
      e[i, j] = MIN(e[i, j], e[i, k] + e[k, j])
-----------------------------------------------
result = 0
FOR ALL i FROM the set V DO
  FOR ALL j FROM the set V DO
    result = MAX(result, e[i, j])
-----------------------------------------------
RETURN result
也许,没有比这更快的算法了。或者,我错了吗

然而,我对以下内容更感兴趣,我认为这里有更快的东西。假设我们简单地交换集合C和N中的两个节点,即对于C中的一些vc和N中的一些vn,集合C变成C+vn-vc,集合N变成N+vc-vn。现在,我们感兴趣的是在G中的所有最短距离上寻找新的最大距离

我所知道的更快的算法就是使用弗洛伊德·沃沙尔的方法从一开始计算新的最大距离,该方法在On2p中再次运行。在交换节点之前,是否有更快的计算方法,可能使用最短距离的旧计算值