最近我參加了一個採訪,並討論了以下我無法弄清楚的問題。週期檢測算法:龜和兔子是否有條件進入循環?
問題-1:
按照我讀龜移動1步和野兔移動2步在時刻證明。我明白這一點,他們會在兔子以兩倍於烏龜的速度移動之後的某個時候見面。他們不能有任何像2和3或3和5或2和4這樣的隨機值。如果是這樣,他們是否會知道這個循環?選擇龜和野兔值的條件是什麼?我們可以選擇任何隨機值嗎?
問題2:
是否有烏龜和野兔進入循環的情況? 假設如果烏龜和兔子有以下值說2和4分別。而鏈表是像
3 / \ 1 - 2 4 \ / 5
如果龜在循環節點3進入和野兔進入環路節點2然後他們都永不滿足對方的循環中。那麼龜龜和野兔是否有條件進入循環?
是否有任何限制值應該選擇,以便他們見面?
請詳細解釋一下_「龜龜和野兔的值是否只有1和2?他們不能有任何像2和3或3和5或2和4這樣的隨機值。」_應該是指。 – Codor
@Codor更新了問題,要點是「我們可以爲烏龜和野兔選擇任何數值,如果這樣他們將滿足進入循環的條件」 – Amarnath