python如何找到数组中相同的两个数
时间: 2023-05-11 18:06:45 浏览: 66
可以使用双重循环来遍历数组,比较每一对数是否相同,时间复杂度为O(n^2)。也可以使用哈希表来记录每个数出现的次数,如果有重复的数,则直接返回。时间复杂度为O(n)。以下是使用哈希表的示例代码:
```python
def find_duplicate(nums):
seen = set()
for num in nums:
if num in seen:
return num
seen.add(num)
return None
```
其中,set()是Python中的集合数据类型,可以用来记录元素是否出现过。
相关问题
python如何找到数组中相同的两个数的索引
可以使用双重循环来遍历数组,找到相同的两个数的索引。具体实现如下:
```python
def find_duplicate(nums):
n = len(nums)
for i in range(n):
for j in range(i+1, n):
if nums[i] == nums[j]:
return i, j
return None
nums = [1, 2, 3, 4, 5, 3]
print(find_duplicate(nums)) # 输出 (2, 5)
```
以上代码中,`find_duplicate` 函数接受一个数组 `nums`,返回相同的两个数的索引。函数中使用了双重循环来遍历数组,如果找到相同的两个数,就返回它们的索引。如果没有找到相同的两个数,就返回 `None`。
python 两数组相同元素个数
要计算两个数组中相同元素的个数,可以使用 Python 的集合(set)和交集(intersection)操作。
下面是一个示例代码:
```python
def count_same_elements(arr1, arr2):
set1 = set(arr1)
set2 = set(arr2)
common_elements = set1.intersection(set2)
return len(common_elements)
# 示例用法
array1 = [1, 2, 3, 4, 5]
array2 = [4, 5, 6, 7, 8]
count = count_same_elements(array1, array2)
print(count) # 输出:2
```
在上述代码中,我们首先将两个数组转换为集合,然后使用 `intersection` 方法找到两个集合的交集,最后返回交集的长度即为相同元素的个数。