リストをトラバースするために2つの変数のみを使用して、リンクされたリストがループするかどうかを見つけるアルゴリズムを知っている人はいますか? オブジェクトのリンクされたリストがあるとします。オブジェクトの種類は関係ありません。1 つの変数にリンクされたリストの先頭へのポインターがあり、リストを走査するための別の変数が 1 つだけ与えられます。
したがって、私の計画は、ポインター値を比較して、同じポインターがあるかどうかを確認することです。リストのサイズは有限ですが、巨大になる可能性があります。両方の変数を先頭に設定してから、他の変数でリストをトラバースし、他の変数と等しいかどうかを常に確認できますが、ループにヒットすると、ループから抜け出すことはできません。リストをトラバースしてポインター値を比較する速度が異なることに関係していると思います。何かご意見は?