只在原数组内取得不重复的数字
时间: 2024-02-18 20:01:36 浏览: 49
不修改数组找出重复的数字.md
如果您需要只在原数组内取得不重复的数字,可以使用Python的collections模块中的Counter类来统计每个数字在数组中出现的次数,然后遍历原数组,将只出现过一次的数字添加到结果列表中。具体的方法是:
1. 导入collections模块。
2. 定义原数组array。
3. 使用Counter类统计原数组中每个数字出现的次数,生成一个Counter对象。
4. 遍历原数组,对于每个数字,判断它在Counter对象中出现的次数是否为1。
5. 如果数字在Counter对象中出现的次数为1,则将它添加到结果列表unique_numbers中;否则,忽略该数字。
6. 返回结果列表unique_numbers。
下面是示例代码:
```python
from collections import Counter
array = [1, 2, 3, 4, 5, 6, 5, 4, 3, 2, 1, 7, 8, 9, 10, 9, 8, 7]
unique_numbers = []
counter = Counter(array)
for num in array:
if counter[num] == 1:
unique_numbers.append(num)
print(unique_numbers)
```
在这个示例中,我们将原数组array设置为[1, 2, 3, 4, 5, 6, 5, 4, 3, 2, 1, 7, 8, 9, 10, 9, 8, 7],使用Counter类统计每个数字在数组中出现的次数,然后遍历原数组,将只出现过一次的数字添加到结果列表unique_numbers中。最后,输出结果列表unique_numbers。
阅读全文