快慢指針方法判斷鏈表是否存在環爲什麼是選擇2作爲快指針的步長

假設慢指針爲walker快指針爲runner,那麼當慢指針到達環入口的時候設兩個指針之間的距離爲S,環的長度設爲R, 那麼當兩者相遇的時候就要滿足S+(k-1)t=nR 通過上式可以看到當k,R 取不同的的值的時候上式的 t , n 的取值可能會變化 當時當我們取2的時候由於s<R則一定會在慢的指針走一圈之內兩者相遇 同樣我們根據具體的問題將條件帶入上式中就可以判斷k取值3,4,5,6。。。等的時
相關文章
相關標籤/搜索