给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。 ,使用python来实现
时间: 2023-12-04 20:03:45 浏览: 81
python 实现给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)
5星 · 资源好评率100%
这里给出两种实现方法:
方法一:使用 set() 函数
```python
def containsDuplicate(nums):
"""
:type nums: List[int]
:rtype: bool
"""
return len(nums) != len(set(nums))
```
方法二:使用哈希表
```python
def containsDuplicate(nums):
"""
:type nums: List[int]
:rtype: bool
"""
d = {}
for num in nums:
if num in d:
return True
d[num] = 1
return False
```
这两种方法的思路都是一样的:将数组转换为 set 或者使用哈希表,判断元素个数是否相同。如果相同,则说明没有重复元素,返回 False;否则说明有重复元素,返回 True。
其中,方法一使用 set() 函数可以一行代码实现,代码简洁;方法二使用哈希表实现,需要使用循环遍历数组,但是可以更好地控制内存空间的使用。
阅读全文