Сложности реализации nth_element

Кто-нибудь знает как ожидаемое время работы, так и время работы в худшем случае для различных реализаций std::nth_element? Я использую этот алгоритм почти каждый день.

Меня особенно интересуют версии STL, поставляемые с последними компиляторами Microsoft, но любая информация по этой теме будет полезна.

Обратите внимание, что это не дубликат этого вопроса. Я понимаю, какие алгоритмы существуют, но меня интересует, какие реализации используют какие алгоритмы.

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

15
задан Community 23 May 2017 в 12:09
поделиться