In this Leetcode Kth Largest element in an array problem solution we have 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.

Leetcode Kth Largest element in an array problem solution


Problem solution in Python.

class Solution:

def findKthLargest(self, nums: List[int], k: int) -> int:
    li=[]
    for num in nums:
        heapq.heappush(li,num)
    toRemove=len(nums)-k    
    while toRemove>0:
        heapq.heappop(li)
        toRemove-=1
    return heapq.heappop(li)



Problem solution in Java.

public int findKthLargest(int[] nums, int k) {
        Arrays.sort(nums);
        int len = nums.length;
        return nums[len-k];
    }


Problem solution in C++.

class Solution {
public:
    int findKthLargest(vector<int>& nums, int k) {
        priority_queue<int> res;
        for(int i : nums)
            res.push(i);
        int ans = -1;
        while(k--){
            if(!res.empty()){
                ans = res.top();
                res.pop();
            }
        }
        return ans;
    }
};


Problem solution in C.

int findKthLargest(int* arr, int size, int k){
        for(int i = 0; i < size; i++){
        for(int j = i + 1; j < size; j++){
            if(*(arr + i) > *(arr + j)){
                int t = *(arr + i);
                *(arr + i) = *(arr + j);
                *(arr + j) = t;
            }
        }
    }
    return *(arr + size - k);
}