判断两个数组是否包含相同元素
时间: 2023-11-21 07:05:14 浏览: 136
C语言中判断两数组中是否有相同的元素
可以采用以下方法判断两个数组是否包含相同元素:
1. 首先判断两个数组的长度是否相等,若长度不相等,则两个数组一定不包含相同元素。
2. 将两个数组排序,然后依次比较对应位置上的元素是否相等,若存在不相等的元素,则两个数组不包含相同元素。
3. 将第一个数组中的元素存入一个哈希表中,然后遍历第二个数组,对于每个元素,判断它是否在哈希表中出现过,若出现过,则两个数组包含相同元素。
示例代码:
```python
def is_same(arr1, arr2):
if len(arr1) != len(arr2):
return False
arr1.sort()
arr2.sort()
for i in range(len(arr1)):
if arr1[i] != arr2[i]:
return False
return True
def is_same2(arr1, arr2):
if len(arr1) != len(arr2):
return False
hash_table = {}
for num in arr1:
hash_table[num] = True
for num in arr2:
if num in hash_table:
return True
return False
arr1 = [1, 2, 3, 4, 5]
arr2 = [1, 2, 3, 4, 5]
arr3 = [1, 2, 3, 4, 6]
arr4 = [1, 2, 3, 4, 5, 6]
print(is_same(arr1, arr2)) # True
print(is_same(arr1, arr3)) # False
print(is_same(arr1, arr4)) # False
print(is_same2(arr1, arr2)) # True
print(is_same2(arr1, arr3)) # False
print(is_same2(arr1, arr4)) # True
```
阅读全文