Menu
CoddyTech

Kth Largest Element in an Array

MoyenTasTripython iconjava iconcpp iconc iconjs icon+10

On vous donne un tableau d’entiers nums et un entier k. Retournez la k-ième plus grande valeur de nums : la valeur à la position k, en comptant à partir de 1, une fois le tableau trié de la plus grande à la plus petite.

Les valeurs égales sont comptées séparément. Dans [5, 5, 1], la plus grande valeur est 5 et la deuxième plus grande est également 5.

Fonction

findKthLargest(nums: integer-array, k: integer) → integer
numsinteger-array
les valeurs à classer
kinteger
quelle est la plus grande valeur à renvoyer, 1 pour la plus grande
Renvoieinteger
la k-ième plus grande valeur, doublons compris

Contraintes

  • 1 ≤ k ≤ nums.length ≤ 104
  • -104 ≤ nums[i] ≤ 104
  • Les valeurs égales comptent comme des valeurs distinctes.

Exemples

Entrée
nums = [7, 2, 9, 4, 9, 1]k = 2
Sortie
9
Explication
Du plus grand au plus petit, les valeurs sont 9, 9, 7, 4, 2, 1. Les deux 9 comptent séparément, donc la deuxième valeur la plus grande est 9, et non 7.

lock icon+15 tests cachés à la soumission

challenge icon

Pour aller plus loin

Les valeurs arrivent maintenant une par une. Peux-tu indiquer la médiane de toutes les valeurs vues jusqu’à présent après chaque arrivée, en O(log n) par valeur ?

Réinitialiser le code
def findKthLargest(nums, k):
    # Écrivez le code ici
Cas de test

Cas 1

Cas 2

Cas 3

Entrée

nums = [7, 2, 9, 4, 9, 1]
k = 2

Attendu

9