Menu
CoddyTech

Kth Largest Element in an Array

Ti viene dato un array di numeri interi nums e un numero intero k. Restituisci il valore più grande in posizione k in nums: il valore in posizione k, contando da 1, dopo aver ordinato l’array dal più grande al più piccolo.

I valori uguali si contano separatamente. In [5, 5, 1] il valore più grande è 5 e il secondo più grande è anch’esso 5.

Funzione

findKthLargest(nums: integer-array, k: integer) → integer
numsinteger-array
i valori da classificare
kinteger
quale valore più grande restituire, 1 per il più grande
Restituisceinteger
il k-esimo valore più grande, contando i duplicati

Vincoli

  • 1 ≤ k ≤ nums.length ≤ 104
  • -104 ≤ nums[i] ≤ 104
  • Valori uguali contano come valori separati.

Esempi

Input
nums = [7, 2, 9, 4, 9, 1]k = 2
Output
9
Spiegazione
Dal più grande al più piccolo, i valori sono 9, 9, 7, 4, 2, 1. I due 9 si contano separatamente, quindi il secondo più grande è 9, non 7.

lock icon+15 test nascosti all’invio

challenge icon

Per approfondire

Ora i valori arrivano uno alla volta. Riesci a indicare la mediana di tutti i valori visti finora dopo ogni arrivo, in O(log n) di tempo per valore?

Ripristina il codice
def findKthLargest(nums, k):
    # Scrivi il codice qui
Casi di test

Caso 1

Caso 2

Caso 3

Input

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

Atteso

9