Medium
Given an integer array nums
and an integer k
, return the kth
largest element in the array.
Note that it is the kth
largest element in the sorted order, not the kth
distinct element.
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 <= 104
-104 <= nums[i] <= 104
function findKthLargest(nums: number[], k: number): number {
const countingLen = 2e4 + 1
const counting = new Int32Array(countingLen)
for (const num of nums) {
counting[num + 1e4]++
}
for (let i = countingLen - 1; i >= 0; i--) {
k -= counting[i]
if (k <= 0) {
return i - 1e4
}
}
}
export { findKthLargest }