leetcode-169-求众数

方法一:

将数组的不同的数以字典的形式存储起来,key值是数组的数,value值是在数组中出现的次数,取value大于2/len(nums)的key

1.代码:

class Solution(object):
    def majorityElement(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        elem_dict={}
        for i in nums:
            if i not in elem_dict:
                elem_dict[i]=1
            else:
                elem_dict[i] += 1
        for i in elem_dict:
            if elem_dict[i]>len(nums)/2:

                return i

2.结果:(效果不太好)


方法二:

采用先排序然后取中间值的方法,因为众数的数目是大于len(num)/2

一、代码

class Solution(object):
    def majorityElement(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        nums.sort()

        return nums[len(nums)/2]

二、结果


阅读更多
个人分类: leetcode-pythpn
上一篇leetcode-167. 两数之和 II - 输入有序数组
下一篇leetcode-189. 旋转数组
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭