给定一个整数数组,判断是否存在重复元素。
如果存在一值在数组中出现至少两次,函数返回 true 。
如果数组中每个元素都不相同,则返回 false 。
思路:此题可以利用hashmap来解决
把数组中元素的值作为key,把元素出现的次数作为value,如果value大于等于2,那么就返回true,反之则返回false
Java:
执行用时:9 ms 在所有 Java 提交中击败了25.62%的用户
内存消耗:44.4 MB在所有 Java 提交中击败了36.46%的用户
class Solution {
public boolean containsDuplicate(int[] nums) {
if(nums.length<=1)
{
return false;
}
HashMap<Integer,Integer>map=new HashMap<>();
for(int i=0;i<nums.length;i++)
{
if(map.containsKey(nums[i]))
{
return true;
}
else
{
map.put(nums[i],1);
}
}
return false;
}
}
Python:
执行用时:48 ms在所有 Python3 提交中击败了51.94%的用户
内存消耗:21.4 MB在所有 Python3 提交中击败了15.53%的用户
class Solution:
def containsDuplicate(self, nums: List[int]) -> bool:
map={};
for num in nums :
if num in map :
return True
else:
map[num]=1
return False