1

今、スタック オーバーフローの回答を読んだことを覚えています。速いランナーと遅いランナーは常にリンクされたリスト ループで衝突し、速度の 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

この例と、ループ内のランナーが常に衝突するというステートメントは、速いランナーが遅いランナーを飛び越え続けることができるため、矛盾しています。

私はまだアルゴリズムのコースを受講していないので、何が間違っているのかをできるだけ簡単に説明してください。

4

0 に答える 0