Решение задачи
Алгоритм решения задачи:
Используйте два указателя быстрый и медленный. Быстрый делает каждый раз два шага вперед, а медленный – каждый раз только один шаг. Они должны встречаться с одним и тем же элементом, когда медленно == быстро. На самом деле они встречаются по кругу, повторяющийся номер должен быть точкой входа в круг при посещении массива из nums[0]. Далее нам просто нужно найти точку входа. Мы используем точку (мы можем использовать быструю раньше), чтобы посещать с начала с одного шага каждый раз, делаем ту же работу, чтобы замедлить. Когда быстро == медленно, они встречаются в точке входа в круг. Простой для понимания код выглядит следующим образом.
