题目
给定一个整数数组,判断是否存在重复元素。
如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。
示例 1:
输入: [1,2,3,1]
输出: true
传送门:LeetCode 217
思路
- 使用hashset判断是否重复
- add方法有返回值,如果添加重复元素,添加失败返回false;反之则为true。
import java.util.Arrays;
import java.util.HashSet;
public class ContainsDuplicate {
// time : O(n) space : O(n)
public static boolean containsDuplicate(int[] nums) {
HashSet<Integer> set = new HashSet<>();
for (int i = 0; i < nums.length; i++) {
if (!set.add(nums[i])) return true;//add方法有返回值,如果添加重复元素,添加失败返回false;反之则为true。
}
return false;
}
public static void main(String[] args){
int [] nums = {1,1,1,3,3,4,3,2,4,2};
System.out.println(containsDuplicate(nums));
}
}