diff --git a/work/1/Medium/Array/215.kth-largest-element-in-an-array.py b/work/1/Medium/Array/215.kth-largest-element-in-an-array.py new file mode 100644 index 0000000..f048d6a --- /dev/null +++ b/work/1/Medium/Array/215.kth-largest-element-in-an-array.py @@ -0,0 +1,50 @@ +""" +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)