这题关键是找环,更关键的是找到环的入口。
另外注意n + 1 integers where each integer is between 1 and n
那么 下标为0的位置的数一定不是0,那么它不会构成一个“安全环” (比如 0->1->2->3->0,并没有重复,但是3不可能到0,因为每个数在1~n之间)。
所以从下标为0的位置开始找,采用快慢指针,找到环的入口即可,这个入口既然不是0,那肯定是中间某个位置,那它必然有至少2个前驱,也就说明这个数是重复的。
这题关键是找环,更关键的是找到环的入口。
另外注意n + 1 integers where each integer is between 1 and n
那么 下标为0的位置的数一定不是0,那么它不会构成一个“安全环” (比如 0->1->2->3->0,并没有重复,但是3不可能到0,因为每个数在1~n之间)。
所以从下标为0的位置开始找,采用快慢指针,找到环的入口即可,这个入口既然不是0,那肯定是中间某个位置,那它必然有至少2个前驱,也就说明这个数是重复的。