求解众数 给定一个整数序列,每个元素元素出现的次数称为重数,重数最大的元素称为众数。编写一个实验程序对递增有序序列a 求众数。例如S=1.2,2,2,3,5],多重集 S 的众数是 2,其重数为3.
时间: 2023-06-17 22:02:02 浏览: 324
众数求解法
可以使用哈希表来实现求众数的算法,具体步骤如下:
1. 定义一个哈希表,用来存储每个元素出现的次数。
2. 遍历整个序列a,将每个元素及其出现次数加入哈希表中。
3. 找到哈希表中出现次数最多的元素,即为众数。
下面是Python代码实现:
```python
def find_mode(a):
# 定义哈希表
freq = {}
# 遍历序列a,统计每个元素出现的次数
for num in a:
freq[num] = freq.get(num, 0) + 1
# 找到出现次数最多的元素
mode = max(freq, key=freq.get)
return mode
```
对于给定的序列S=[1,2,2,3,5],调用find_mode(S)函数,将返回2,即为众数。
阅读全文