class Solution {
public boolean containsDuplicate(int[] nums) {
// int len=nums.length;
// if(len<=1) return false;
// HashMap<Integer,Integer> map=new HashMap<>();
// map.put(nums[0],0);
// for(int i=1;i<len;++i){
// if(!map.containsKey(nums[i]))
// map.put(nums[i],i);
// else
// return true;
// }
// return false;
/这道题更应该用hashset来做,但是比HashMap更慢,空间占用也更多,这是为何?
Set set=new HashSet<>(nums.length);
for(int x:nums){
if(set.contains(x))
return true;
else set.add(x);
}
return false;
}
}
leetcode No.217 存在重复元素
最新推荐文章于 2024-10-03 21:46:55 发布