题目描述:
方法一:排序输出中位数
class Solution(object): def majorityElement(self, nums): """ :type nums: List[int] :rtype: int """ if not nums: return None nums.sort() return nums[len(nums)//2]
方法二:从第一个数开始count=1,遇到相同的就加1,遇到不同的就减1,减到0就重新换个数开始计数,总能找到最多的那个
class Solution(object): def majorityElement(self, nums): """ :type nums: List[int] :rtype: int """ cnt,ret = 0,0 for num in nums: if cnt == 0: ret = num if num != ret: cnt -= 1 else: cnt += 1 return ret
原文:https://www.cnblogs.com/oldby/p/10561066.html