Post

Leetcode 0217. Contains Duplicate

Given an integer array `nums`, return `true` if any value appears at least twice in the array, and return `false` if every element is distinct.  Example 1:  Input: nums = [1,2,3,1], Output: true 

Description

Given an integer array nums, return true if any value appears at least twice in the array, and return false if every element is distinct.

Example 1:

Input: nums = [1,2,3,1]
Output: true

Example 2:

Input: nums = [1,2,3,4]
Output: false

Example 3:

Input: nums = [1,1,1,3,3,4,3,2,4,2]
Output: true

Constraints:

  • 1 <= nums.length <= 10^5
  • -10^9 <= nums[i] <= 10^9

Solution

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Solution {
  /**
  * Iterative Approach
  * Analysis
  * Time Complexity: BigO(n)
  * Space Complexity: BigO(n)
  */
  public boolean containsDuplicate(int[] nums) {
    HashSet<Integer> list = new HashSet<Integer>();
    for (int i = 0; i < nums.length; i++) {
      if (list.contains(nums[i])) {
        return true;
      }
      list.add(nums[i]);
    }
    return false;
  }
}
This post is licensed under CC BY 4.0 by the author.