lc169. Majority Element

124 阅读1分钟

169. Majority Element

Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋ times.

You may assume that the array is non-empty and the majority element always exist in the array.

Example 1:

Input: [3,2,3] Output: 3 Example 2:

Input: [2,2,1,1,1,2,2] Output: 2

思路:键值存储出现次数 比如,dic[3]=2 >dic[2]=1,遍历出多于一半的,返回键就行

代码:python3

class Solution:
    def majorityElement(self, nums: List[int]) -> int:
        dic = {}
        for num in nums:
            if num not in dic:
                dic.setdefault(num,1)
            else:
                dic[num] = dic[num]+1
        for key,value in dic.items():
            if value >= len(nums)/2:
                return key