题意:
如果所给序列的元素不是唯一的,则返回true,否则false。
思路:
哈希map解决。
class Solution {
public:
bool containsDuplicate(vector<int>& nums) {
unordered_map<int,int> mapp;
for(int i=; i<nums.size(); i++)
{
if(mapp[nums[i]]) return true;
else mapp[nums[i]]=;
}
return false;
}
};
AC代码
python3
直接排序,再比对相邻元素
class Solution(object):
def containsDuplicate(self, nums):
"""
:type nums: List[int]
:rtype: bool
"""
if nums==[]: return False
nums=sorted(nums)
i=1
while i<len(nums):
if nums[i-1]==nums[i]:
return True
i+=1
return False
AC代码
用set辅助
class Solution(object):
def containsDuplicate(self, nums):
"""
:type nums: List[int]
:rtype: bool
"""
return len(set(nums))<len(nums)
AC代码