フロイドの循環検出法
このアルゴリズムの第一段階は、最小で max ( λ , μ ) {\displaystyle \max(\lambda ,\mu )} 、最大で λ + μ {\displaystyle \lambda +\mu } の比較演算をする必要がある。循環のスタート地点を探すには λ {\displaystyle \lambda } 回の比較が必要である。循環の長さを知るには μ {\displaystyle \mu } 回の比較が必要であるが、 m {\displaystyle m} が μ {\displaystyle \mu } の整数倍であることを利用することで節約が可能である。
このアルゴリズムは O ( 1 ) {\displaystyle O(1)} の領域を使用する。