【问题描述】 读入一个大小为n的列表,找出其中的多数元素。多数元素是指在列表中出现次数大于n//2的元素(每个列表最多一个多数元素)。根据代码框架编写一个函数。 【输入形式】 输入列表,包括方括号,逗号分隔 【输出形式】 如果有多数元素,输出这个元素的值,如果没有多数元素,输出False
时间: 2024-03-25 12:37:01 浏览: 78
算法设计大作业之寻找多数元素.doc
以下是基于您提供的问题描述的Python代码实现:
```python
def majority_element(nums):
counts = {}
for num in nums:
if num in counts:
counts[num] += 1
else:
counts[num] = 1
for num in nums:
if counts[num] > len(nums) // 2:
return num
return False
```
该函数的输入为一个列表,输出为多数元素的值(如果有多数元素),或者False(如果没有多数元素)。函数首先遍历列表,使用一个字典记录每个元素出现的次数。然后再次遍历列表,检查每个元素是否是多数元素。如果是,直接返回该元素;如果没有多数元素,则返回False。
阅读全文