java.lang.Object
g0201_0300.s0287_find_the_duplicate_number.Solution

public class Solution extends Object
287 - Find the Duplicate Number\. Medium Given an array of integers `nums` containing `n + 1` integers where each integer is in the range `[1, n]` inclusive. There is only **one repeated number** in `nums`, return _this repeated number_. You must solve the problem **without** modifying the array `nums` and uses only constant extra space. **Example 1:** **Input:** nums = [1,3,4,2,2] **Output:** 2 **Example 2:** **Input:** nums = [3,1,3,4,2] **Output:** 3 **Example 3:** **Input:** nums = [1,1] **Output:** 1 **Example 4:** **Input:** nums = [1,1,2] **Output:** 1 **Constraints:** * 1 <= n <= 105 * `nums.length == n + 1` * `1 <= nums[i] <= n` * All the integers in `nums` appear only **once** except for **precisely one integer** which appears **two or more** times. **Follow up:** * How can we prove that at least one duplicate number must exist in `nums`? * Can you solve the problem in linear runtime complexity?
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • findDuplicate

      public int findDuplicate(int[] nums)