用 Python 找出陣列中第 K 大的元素


假設我們有一個未排序的陣列,我們必須從該陣列中找到第 k 大的元素。因此,如果陣列是 [3,2,1,5,6,4] 且 k = 2,則結果將是 5。

要解決這個問題,我們將遵循以下步驟 -

  • 我們將對元素進行排序,
  • 如果 k 為 1,則返回最後一個元素,否則返回 array[n - k],其中 n 是陣列的大小。

讓我們看看以下實現以獲得更好的理解 -

示例

 Live Demo

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))

輸入

[56,14,7,98,32,12,11,50,45,78,7,5,69]
5

輸出

50

更新於: 04-May-2020

2K+ 檢視

開啟你的 職業生涯

完成課程以獲得認證

開始
廣告