DSA Practice Question - 2 "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

Example 2:

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

Solution


I used a HashSet to add the elements from the array for the first occurrence and if they are coming more than once I set the flag variable to true.

class Solution {
    public boolean containsDuplicate(int[] nums) {
        HashSet<Integer> map = new HashSet<>();
        boolean check = false; 
        for(int i = 0 ; i < nums.length ; i++)
        {
            if(!map.contains(nums[i]))
            {
                    map.add(nums[i]);
                    System.out.println(nums[i]);
            }
            else
            {
                check = true;
                break;
            }
        }
        return check; 
    }
}