leetcode

我的 leetcode 题解(JavaScript)


const findDuplicate = function (nums) {
  if (nums.length > 1) {
    let slow = nums[0],
      fast = nums[nums[0]];
    while (slow !== fast) {
      slow = nums[slow];
      fast = nums[nums[fast]];
    }

    fast = 0;
    while (fast !== slow) {
      fast = nums[fast];
      slow = nums[slow];
    }
    return slow;
  }
};