检测链接列表中的循环。

时间:2013-06-18 16:49:59

标签: linked-list

我知道为了在链表中找到一个循环,我可以定义对列表的两个引用,并以不同的速度移动它们。向前移动一个节点,另一个移动2个节点。

因此,如果链表有一个循环,它们肯定会遇到, 否则两个引用中的任何一个(或它们的下一个)都将变为空。

我的问题是:为什么另一个引用应该在2个节点中移动 为什么它不能被任何其他偶数/奇数移动,是解决方案的正确性 依靠这个?

先谢谢。

1 个答案:

答案 0 :(得分:0)

步长越大,在保证满足之前循环次数越多。