Недавно я узнал, что в STL существует метод, называемый nth_element. Процитируем описание:алгоритм для nth_element
Nth_element похож на partial_sort, в том, что она частично заказывает ряд элементов: он организует диапазон [первый, последний), такие , что элемент, на который указывает итератора nth совпадает с элементом , который был бы в этом положении , если был отсортирован весь диапазон [первый, последний] . Кроме того, ни один из элементов в диапазоне [nth, last) не является меньше любого из элементов в диапазоне [первый, n-й).
Он утверждает, что в среднем имеет сложность O (n). Как работает алгоритм? Я не мог найти объяснений.
спасибо, я чувствую себя просветленным сейчас :) – martinus