赞
踩
首先假设有一个无限长的链表,其中slow指针指向链表的第N个结点(结点从0开始),fast指向第0个结点,那么此时fast与slow的距离为N-0=N。
接下俩采取slow和fast分别采取一次一步和两步的策略移动,设k为移动次数,当k=1即一次移动后则slow与fast距离变为N+1-2=N-1
继续移动,其总的距离变化:N、N-1、N-2...2、1、0(相遇)
当移动k=N时即移动N次后,fast与slow距离变为0,相遇;
理解了这个,我们再看一个带环链表,其中的环等价于一个无限长的链表,当slow进入环时,fast总会在环中的某个位置。</
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。