多个数组对比去除相同元素得到不重复的n个顺序组合并演示结果
时间: 2024-02-15 12:02:14 浏览: 103
群体(大小为N的数组)中随机抽取一定数量(M个)的样本1
好的,我可以为您提供一个示例代码,用于实现多个数组对比,去除相同元素,得到不重复的 n 个顺序组合。以下是示例代码:
```python
import itertools
def get_unique_combinations(*arrays, n):
"""
从多个数组中获取不重复的 n 个顺序组合
"""
# 将多个数组合并为一个数组
merged_array = list(itertools.chain(*arrays))
# 从合并后的数组中获取长度为 n 的所有组合
combinations = list(itertools.combinations(merged_array, n))
# 去除重复组合
unique_combinations = set(combinations)
return unique_combinations
```
使用示例:
```python
array1 = [1, 2, 3]
array2 = [2, 3, 4]
array3 = [3, 4, 5]
unique_combinations = get_unique_combinations(array1, array2, array3, n=2)
print(unique_combinations)
```
输出结果:
```
{(1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5)}
```
此处我们将三个数组 `[1, 2, 3]`,`[2, 3, 4]`,`[3, 4, 5]` 合并为一个数组 `[1, 2, 3, 2, 3, 4, 3, 4, 5]`,然后从中获取长度为 2 的所有组合,并去除重复组合,最终得到的不重复的顺序组合为 `{(1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5)}`。
阅读全文