我们只考虑无向图。图表的直径是s
和{{1}之间最短路径距离的所有顶点选择t
和s
的最大值}。 (回想一下t
和s
之间的最短路径距离是t
路径中最少的边数。)接下来,对于顶点s-t
,让{{1 }}表示s
和l(s)
之间最短路径距离的所有顶点t
的最大值。图的半径是s
在顶点t
的所有选项中的最小值l(s)
。
半径s
和直径r
以下哪一项始终保持?选择最佳答案。
1)r> = d / 2
2)r< = d
我们知道(1)和(2)总是持有和写在任何参考书中。 我的挑战是入学考试中提到的这个问题,只有(1)或(2)中的一个应该是真的,OP说选择最好的答案,考试后答题表写的(1)是最好的选择。如何验证我,为什么(1)优于(2)。
答案 0 :(得分:3)
他们都坚持。
2)应该清楚。
1)使用三角不等式。我们可以使用此属性,因为图表上的距离是指标(http://en.wikipedia.org/wiki/Metric_%28mathematics%29)。使用令d(x,z)=直径(G)并且令y为G的中心(即,在G中存在顶点v,使得d(y,v)=半径(G))。因为d(y,v)=半径(G)和d(y,v)= d(v,y),我们知道d(v,z)<=半径(G)。然后我们得到直径(G)= d(x,z)&lt; = d(y,v)+ d(v,z)&lt; = 2 *半径(G)。
答案 1 :(得分:1)
他们俩都是真的。 不要让含糊不清的问题的考试削弱您的概念。
关于证明:
首先,第二个不等式非常简单(从定义本身来看)
现在第一个d <= 2 * r:
让z成为中心顶点
e(z)= r
现在让我们
直径= d(x,y)[对于某些x和y]
d(x,y)<= d(x,z)+ d(z,y)
d(x,y)<= d(z,x)+ d(z,y)
d(x,y)<= e(z)+ e(z)[对于所有u,这都可以作为e(z)> = d(z,u)的上限]
直径<= 2 * r
答案 2 :(得分:0)
OP将s和t之间的最短路径距离定义为“s-t路径中最少的边数”。这使事情变得更简单。
我们可以根据某些伪代码来编写定义:
def dist(s, t):
return min([len(path)-1 for path starts with s and ends with t])
r = min([max([dist(s, t) for t in V]) for s in V])
d = max([max([dist(s, t) for t in V]) for s in V])
其中V
是所有顶点的集合。
现在(2)显然是正确的。定义本身告诉我们:max always >= min
。
(1)略显不明显。它至少需要几个步骤来证明。
假设d = dist(A, B)
和r = dist(C, D)
,我们有
dist(C, A) + dist(C, B) >= dist(A, B),
否则路径A-C-B
的长度将小于dist(A, B)
。
根据r
的定义,我们知道
dist(C, D) >= dist(C, A)
dist(C, D) >= dist(C, B)
因此2 * dist(C, D) >= dist(A, B)
,即2 * r >= d
。
哪一个更好?这取决于你如何定义“更好”。如果我们认为某些非正式(或不那么明显)的东西要比一些正确的东西更好,那么我们可能同意(1)胜过(2)。