Giả sử chúng ta có một mảng chưa được sắp xếp, chúng ta phải tìm phần tử lớn thứ k từ mảng đó. Vì vậy, nếu mảng là [3,2,1,5,6,4] và k =2, thì kết quả sẽ là 5.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- Chúng tôi sẽ sắp xếp phần tử,
- nếu k là 1, thì trả về phần tử cuối cùng, nếu không thì trả về mảng [n - k], trong đó n là kích thước của mảng.
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Ví dụ
class Solution(object): def findKthLargest(self, nums, k): nums.sort() if k ==1: return nums[-1] temp = 1 return nums[len(nums)-k] ob1 = Solution() print(ob1.findKthLargest([56,14,7,98,32,12,11,50,45,78,7,5,69], 5))
Đầu vào
[56,14,7,98,32,12,11,50,45,78,7,5,69] 5
Đầu ra
50