python 统计数组中每个元素的个数
时间: 2023-07-14 21:12:40 浏览: 240
你可以使用 Python 中的 `collections` 模块中的 `Counter` 类来实现统计数组中每个元素的个数。
例如,假设有一个数组 `arr`,你可以像这样统计每个元素的个数:
```python
from collections import Counter
arr = [1, 2, 3, 1, 2, 1, 4, 5, 4, 2]
count = Counter(arr)
print(count)
```
输出结果会是:
```
Counter({1: 3, 2: 3, 4: 2, 3: 1, 5: 1})
```
其中,每个元素作为 key,对应的个数作为 value,存储在一个字典中。
相关问题
统计数组中比邻元素小的数组元素的个数
当统计一个数组中比某个元素小的元素个数时,可以使用以下方法:
1. 遍历整个数组,计算比给定元素小的元素个数,时间复杂度为 O(n)。
2. 如果需要进行多次查询,可以使用排序和二分查找。首先对数组进行排序,然后对于每个查询元素,使用二分查找找到它在排序后的数组中的位置,该位置之前的元素即为比它小的元素。时间复杂度为 O(nlogn + mlogn),其中 n 为数组长度,m 为查询次数。
以下是第一种方法的 Python 代码示例:
```
def count_smaller_elements(arr, elem):
count = 0
for i in range(len(arr)):
if arr[i] < elem:
count += 1
return count
```
例如,对于数组 `[2, 4, 1, 5, 3]`,查询元素 `3`,调用函数 `count_smaller_elements([2, 4, 1, 5, 3], 3)` 将返回 `2`,因为只有 `1` 和 `2` 比 `3` 小。
编写一个Python程序,读入一个包含10个整数的数组,输出这个数组中所有奇数的个数
好的,下面是代码:
```python
arr = [] # 定义一个空数组
count = 0 # 计数器
# 循环读入10个整数
for i in range(10):
num = int(input("请输入第%d个整数:" % (i+1)))
arr.append(num) # 将输入的整数添加到数组中
# 循环判断每个数是否为奇数,如果是就将计数器加1
for num in arr:
if num % 2 == 1:
count += 1
# 输出结果
print("这个数组中所有奇数的个数为:%d" % count)
```
这段代码会在屏幕上依次显示提示信息,要求用户输入10个整数,然后统计数组中所有奇数的个数,并输出结果。
阅读全文