我看过这个问题,其中讨论了在链表中找到循环的算法。我已经阅读了Floyd's cycle-finding algorithm的解决方案,在很多地方提到我们必须采取两个指针。一个指针( slower/tortoise )每次增加1,另一个指针( faster/hare )每次增加2。当它们相等时,我们发现了循环,如果快速指针到达null,则没有循环在链表中。
现在我的问题是为什么我们要将快速指针增加2。为什么不是其他数值?是否必须增加2才能得到结果,或者我们可以通过增加X来获得结果。如果我们将快速指针增加2,是否必定会找到一个循环,还是可能需要增加3、5或X。