如何在完整的无向图中找到哈密顿环的周期数?

时间:2009-09-07 04:12:27

标签: algorithm graph cycle

有人可以解释如何在完整的无向图中找到哈密顿环的周期数吗?

Wikipedia says公式为(n-1)!/2,但当我使用此公式计算时,K3只有一个周期而K4有5.我的计算是否不正确?

3 个答案:

答案 0 :(得分:25)

由于图形完成,任何以固定顶点开始的排列都会给出(几乎)唯一的循环(排列中的最后一个顶点将有一条边回到第一个固定顶点。除了一件事:如果你访问循环中的顶点以相反的顺序排列,那么这个循环实际上是相同的(因此,这个数字是(n-1)个顶点的排列的一半)。

e.g。对于顶点1,2,3,修复“1”,你有:

123 132

但123反转(321)是(132)的旋转,因为32反转为23。

有(n-1)!非固定顶点的排列,其中一半与另一个顶点相反,因此在n个顶点的完整图中存在(n-1)!/ 2个不同的哈密顿循环。

答案 1 :(得分:3)

要回答您的Google Code Jam评论,请参阅this SO question

答案 2 :(得分:-1)

我认为当我们有哈密顿循环时,如果我们将一个顶点视为起始和结束循环,则每个顶点都位于哈密顿循环中。我们应该使用这个顶点的2个边。所以我们有(n-1)(n-2)/ 2哈密顿循环,因为我们应该选择连接到这个顶点的n-1个边的2个边。