Есть ли какая-нибудь функция, которая вернет мне N самых высоких элементов из некоторого списка?
То есть, если max (l )
возвращает единственный самый высокий элемент, sth. например, max (l, count = 10)
вернет мне список из 10 самых высоких чисел (или меньше, если l
меньше).
Или какой эффективный простой способ получить их? (За исключением очевидной канонической реализации; кроме того, нет таких вещей, которые предполагали бы сначала сортировку всего списка, потому что это было бы неэффективно по сравнению с каноническим решением.)