如何找出有環鏈表的入環點?

從上面的分析知道,當fast和slow相遇時,slow還沒有走完鏈表,假設fast已經在環內循環了n(1<= n)圈。假設slow走了s步,則fast走了2s步,又由於 fast走過的步數 = s + n*r(s + 在環上多走的n圈,環的長度是r),則有下面的等式: (1)2*s = s + n  * r ; (2)=> s = n*r 如果假設整個鏈表的長度是L,入口和相遇點的距離是x(如上圖
相關文章
相關標籤/搜索