L215:数组中的第K个最大元素

https://leetcode-cn.com/problems/kth-largest-element-in-an-array/

这道题有点奇怪(指数据),其实按说第k个应该用大小堆(复杂度N*lgK),但是这道题排序(NlgN)后取第k个反而更快。

堆代码:

class Solution(object):
    def findKthLargest(self, nums, k):
        """
        :type nums: List[int]
        :type k: int
        :rtype: int
        """
        import heapq
        return heapq.nlargest(k, nums)[-1]

排序代码:

class Solution(object):
    def findKthLargest(self, nums, k):
        """
        :type nums: List[int]
        :type k: int
        :rtype: int
        """
        nums.sort()
        return nums[-k]

简单暴力,却又不失有效哈哈哈

分类: 算法

0 条评论

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注