Menu
CoddyTech

Kth Largest Element in an Array

Дан массив целых чисел nums и целое число k. Верните k-е наибольшее значение в nums: значение на позиции k при отсчёте с 1 после сортировки массива от наибольшего к наименьшему.

Одинаковые значения считаются отдельно. В [5, 5, 1] наибольшее значение — 5, а второе наибольшее — тоже 5.

Функция

findKthLargest(nums: integer-array, k: integer) → integer
numsinteger-array
значения для ранжирования
kinteger
какое наибольшее значение вернуть: 1 — для наибольшего
Возвращаетinteger
k-е по величине значение, включая дубликаты

Ограничения

  • 1 ≤ k ≤ nums.length ≤ 104
  • -104 ≤ nums[i] ≤ 104
  • Равные значения считаются отдельными значениями.

Примеры

Ввод
nums = [7, 2, 9, 4, 9, 1]k = 2
Вывод
9
Пояснение
От наибольшего к наименьшему значения расположены так: 9, 9, 7, 4, 2, 1. Две девятки считаются отдельно, поэтому второе по величине значение — 9, а не 7.

lock icon+15 скрытых тестов при отправке

challenge icon

Дополнительный вопрос

Теперь значения поступают по одному. Сможешь сообщать медиану всех значений, полученных к этому моменту, после поступления каждого значения за O(log n) времени?

Сбросить код
def findKthLargest(nums, k):
    # Напишите код здесь
Тестовые случаи

Случай 1

Случай 2

Случай 3

Ввод

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

Ожидается

9