from heapq import heapify, heappop, heappush
class Solution(object):
def findKthLargest(self, nums, k):
"""
:type nums: List[int]
:type k: int
:rtype: int
"""
# 堆排序,这个堆排序更好
# 第k个最大值,那么就建立只有k个元素的小根堆,此时根节点就是所求
minheap = []
# heapify(minheap)
for num in nums:
heappush(minheap, num)
if len(minheap) > k:
heappop(minheap)
return minheap[0]
# 堆排序2
minheap = [i * (-1) for i in nums]
heapify(minheap)
while k-1:
heappop(minheap)
k -= 1
return minheap[0]*(-1)
# 3
nums.sort()
return nums[len(nums)-k]
# return nums[-k]也可以