mirror of
https://github.com/prdlk/leetcode.git
synced 2026-09-16 23:16:26 +00:00
51 lines
1012 B
Python
51 lines
1012 B
Python
"""
|
|||
|
|
215. Kth Largest Element in an Array
|
||
|
|
Difficulty: Medium
|
||
|
|
https://leetcode.com/problems/kth-largest-element-in-an-array/
|
||
|
|
|
||
|
|
──────────────────────────────────────────────────
|
||
|
|
|
||
|
|
Given an integer array nums and an integer k, return the k^th largest
|
||
|
|
element in the array.
|
||
|
|
|
||
|
|
Note that it is the k^th largest element in the sorted order, not the
|
||
|
|
k^th distinct element.
|
||
|
|
|
||
|
|
Can you solve it without sorting?
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
Example 1:
|
||
|
|
|
||
|
|
Input: nums = [3,2,1,5,6,4], k = 2
|
||
|
|
Output: 5
|
||
|
|
|
||
|
|
Example 2:
|
||
|
|
|
||
|
|
Input: nums = [3,2,3,1,2,4,5,5,6], k = 4
|
||
|
|
Output: 4
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
Constraints:
|
||
|
|
|
||
|
|
• 1 <= k <= nums.length <= 10^5
|
||
|
|
|
||
|
|
• -10^4 <= nums[i] <= 10^4
|
||
|
|
"""
|
||
|
|
|
||
|
|
import heapq
|
||
|
|
|
||
|
|
|
||
|
|
class Solution:
|
||
|
|
def findKthLargest(self, nums: List[int], k: int) -> int:
|
||
|
|
for i in range(len(nums)):
|
||
|
|
nums[i] = -nums[i]
|
||
|
|
|
||
|
|
heapq.heapify(nums)
|
||
|
|
|
||
|
|
for _ in range(k - 1):
|
||
|
|
heapq.heappop(nums)
|
||
|
|
|
||
|
|
return -heapq.heappop(nums)
|