Кто-нибудь знает об алгоритме, чтобы найти, если привязанный список петли сам по себе, используя только две переменные для перемещения по списку. Скажем, у вас есть связанный список объектов, неважно, какой тип объекта. У меня есть указатель на заголовок связанного списка в одной переменной, и мне предоставляется только одна переменная для перемещения по списку.
Итак, мой план - сравнить значения указателя, чтобы увидеть, одинаковы ли какие-либо указатели. Список имеет конечный размер, но может быть огромным. Я могу установить обе переменные в голову, а затем пересечь список с другой переменной, всегда проверяя, равна ли она другой переменной, но, если я нахожусь в цикле, я никогда не выйду из него. Я думаю, что это связано с разными темпами прохождения списка и сравнения значений указателя. Любые мысли?