请输入一个包含若干整数或实数的列表lst,要求输出其中出现次数最多的一个,如果有多于一个并列最多,就输出最大的一个。
时间: 2023-11-26 09:01:29 浏览: 82
输入若干个整数,统计出现次数最多的那个整数。如果出现最多的整数有两个以上,打印最早输入的那个整数。
首先,我们可以创建一个空的字典来存储每个数字出现的次数。然后我们遍历列表lst,对于每个数字,如果它在字典中已经出现过,则将其对应的计数加一,如果没有出现过,则将其添加到字典中并将计数设为1。接着,我们可以找出字典中值最大的键,即出现次数最多的数字。如果有多个数字出现次数最多,我们可以将它们放入一个列表中,然后找出列表中最大的数即为要输出的结果。
下面是一个示例代码:
```python
def find_most_frequent(lst):
count_dict = {}
for num in lst:
if num in count_dict:
count_dict[num] += 1
else:
count_dict[num] = 1
max_count = max(count_dict.values())
most_frequent_nums = [key for key, value in count_dict.items() if value == max_count]
result = max(most_frequent_nums)
return result
# 测试代码
test_lst = [1, 2, 3, 4, 2, 2, 3, 3, 3]
print(find_most_frequent(test_lst)) # 输出结果为3
```
通过上面的方法,我们可以得到列表lst中出现次数最多的一个或多个并列最多的数字,并返回最大的一个。
阅读全文