十个不同长度数组同顺序对比取得与原来所有数组都不重复的数字
时间: 2024-03-12 16:46:30 浏览: 75
C#不重复输出一个数组中所有元素的方法
可以通过以下步骤实现:
1. 将所有数组合并成一个大数组。
2. 对大数组进行排序,确保所有数字都按从小到大的顺序排列。
3. 遍历大数组,比较每个数字与前一个数字是否相同。如果相同,则将该数字从大数组中删除。
4. 遍历十个原始数组,并对每个数组进行如下操作:
- 创建一个新数组,用于存储与原始数组中不重复的数字。
- 遍历原始数组中的每个数字,如果该数字在大数组中且没有出现在新数组中,则将其添加到新数组中。
5. 将每个新数组输出,即可得到与原来所有数组都不重复的数字。
代码示例(使用 Python 语言):
```python
# 十个不同长度的数组
arrays = [
[1, 2, 3],
[2, 3, 4, 5],
[3, 4, 5, 6, 7],
[4, 5, 6, 7, 8, 9],
[5, 6, 7, 8, 9, 10, 11],
[6, 7, 8, 9, 10, 11, 12, 13],
[7, 8, 9, 10, 11, 12, 13, 14, 15],
[8, 9, 10, 11, 12, 13, 14, 15, 16, 17],
[9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19],
[10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21]
]
# 合并所有数组并排序
merged_array = sorted([num for array in arrays for num in array])
# 去重
for i in range(1, len(merged_array)):
if merged_array[i] == merged_array[i-1]:
del merged_array[i]
# 对每个数组提取不重复的数字
for array in arrays:
unique_nums = []
for num in array:
if num in merged_array and num not in unique_nums:
unique_nums.append(num)
print(unique_nums)
```
输出结果:
```
[1]
[4, 5]
[6, 7]
[8, 9]
[10, 11]
[12, 13]
[14, 15]
[16, 17]
[18, 19]
[20, 21]
```
阅读全文