私はフロイドのサイクル検出アルゴリズムを理解する助けを求めています。ウィキペディア(http://en.wikipedia.org/wiki/Cycle_detection#Tortoise_and_hare)の説明を読みました。
アルゴリズムがO(n)時間でサイクルを検出する方法を見ることができます。ただし、亀とウサギのポインターが初めて会った後、亀のポインターを最初に戻し、亀とウサギの両方を一度に動かすことで、サイクルの開始を決定できるという事実を視覚化することはできません。彼らが最初に会うポイントは、サイクルの始まりです。
私がそれを理解/視覚化できないので、誰かが説明を提供することで助けてくれますか?
fast
変数、または「うさぎ」が1つだけではなく、亀の2倍の速度で移動する必要がある理由を知っていますか?