今、スタック オーバーフローの回答を読んだことを覚えています。速いランナーと遅いランナーは常にリンクされたリスト ループで衝突し、速度の 2 の差は任意であるということです。
速いランナーと遅いランナーの差が 2 の場合、反例を思いつくことができませんでしたが、ランナーの差が 3 の場合、次の例ではランナーを衝突させることができないようです。 .
リンクされたリスト ループ内に、低速と高速の 2 つのランナーがあるとします。ループには 8 つのノードがあり、1 番目のノードは 0、2 番目のノードは 1 というようにラベル付けされています。Slow はインデックス 0 で Fast は 1 で、衝突することはありません。
slow fast
0 1
1 4
2 7
3 2
4 5
5 0
6 3
7 6
0 1 # pattern seems to restart here
この例と、ループ内のランナーが常に衝突するというステートメントは、速いランナーが遅いランナーを飛び越え続けることができるため、矛盾しています。
私はまだアルゴリズムのコースを受講していないので、何が間違っているのかをできるだけ簡単に説明してください。