给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。
你可以假设数组是非空的,并且给定的数组总是存在众数。
示例 1:
输入: [3,2,3] 输出: 3

class Solution:
def majorityElement(self, nums: List[int]) -> int:
if len(nums)==1:
return nums[0]
numDic = {}
for i in nums:
if i in numDic:
numDic[i] += 1
if numDic.get(i)>=(len(nums)+1)/2:
return i
else:
numDic[i] = 1
class Solution(object):
def majorityElement(self, nums: List[int]) -> int:
"""
:type nums: List[int]
:rtype: int
"""
return sorted(nums)[len(nums)//2]
Ps:众数是排序后的中位数。
寻找众数
本文介绍了一种寻找数组中众数的方法,即出现次数超过数组长度一半的元素。通过使用字典统计每个元素出现的频率或者利用众数即为排序后中位数的特点来解决问题。
44万+

被折叠的 条评论
为什么被折叠?



