1
在图形上添加边时,最短距离会变化多少?
令G=(V,E)G=(V,E)G=(V,E)是一些完整的,加权的,无向的图。我们通过从E到E '一对一地增加边来构造第二个图。我们总共将Θ (| V |)边加到G '。G′=(V,E′)G′=(V,E′)G'=(V, E')EEEE′E′E'Θ(|V|)Θ(|V|)\Theta(|V|)G′G′G' 每次我们添加一个边缘(u,v)(u,v)(u,v)于E′E′E',我们考虑所有对之间的最短距离在(V,E′)(V,E′)(V, E')和(V,E′∪{(u,v)})(V,E′∪{(u,v)})(V, E' \cup \{ (u,v) \})。我们计算由于加而导致的最短距离变化了多少(u,v)(u,v)(u,v)。让CiCiC_i是变化的,当我们添加的最短距离的数量iii边数,令为总和。nnn C = ∑ i C i有多大?C=∑iCinC=∑iCinC = \frac{\sum_i C_i}{n} 由于,所以C = O (n 2)也是如此。这个界限可以改善吗?请注意,我将C定义为所有相加边的平均值,因此,即使证明了C = Ω (n ),也没有那么有趣的一轮,因为距离变化很大。Ci=O(|V|2)=O(n2)Ci=O(|V|2)=O(n2)C_i = O(|V|^2)=O(n^2)C=O(n2)C=O(n2)C=O(n^2)CCCC=Ω(n)C=Ω(n)C = \Omega(n) 我有一种算法可以贪婪地计算几何t跨度,该算法可以在时间内工作,因此,如果C为o (n 2),则我的算法要比原始贪婪算法快,并且如果C真的很小,其速度可能比最著名的算法快(尽管我对此表示怀疑)。O(Cnlogn)O(Cnlogn)O(C n \log n)CCCo(n2)o(n2)o(n^2)CCC 一些特定于问题的属性可能有助于确定界限:添加的边权重始终大于图中已存在的任何边的权重(不一定严格地更大)。此外,它的权重比u和v之间的最短路径短。(u,v)(u,v)(u,v)uuuvvv 您可以假定顶点对应于2d平面中的点,并且顶点之间的距离是这些点之间的欧几里得距离。也就是说,每个顶点对应于平面中的某个点(x ,y ),并且对于边(u ,v )= ((x 1,y …