让我们说我们有一组任意节点,我们想要节点之间的最短路径,我们必须访问图中的所有节点。它是一种旅行推销员问题,但没有再回到起始节点。假设我们可以从任意节点开始并在任意节点(起始节点除外)结束,但我们必须访问图中的所有节点。复杂性是否与旅行商问题相同,即NP难?有没有已知的算法来解决这个问题?
答案 0 :(得分:0)
这仍然是TSP,并且是NP-Hard。适用于TSP的算法也适用于此。请注意,您不关心"什么是起始节点是无关紧要的,因为通过尝试所有可能性,您将复杂性乘以n
。
从Hamiltonian Path Problem到这个问题的减少是相当微不足道的:
根据图表G=(V,E)
,使用G'=(V,E',w)
创建新的加权图表,其中:
E' = V x V (all edges are there)
w(u,v) = 1 if (u,v) is in E
w(u,v) = 2 else
现在,当且仅当穿过所有顶点的最短路径长度为G
时,原始图|V|
才具有哈密尔顿路径。