Допустим, мне нужно получить медиану из последовательности 1000000 случайных числовых значений.
Если используется что-то кроме std::list
, у меня нет (встроенного) способа сортировки последовательности для вычисления медианы.
Если используется std::list
, я не могу получить произвольный доступ к значениям для получения середины (медианы) отсортированной последовательности.
Лучше ли реализовать сортировку самостоятельно и перейти, например, с помощью std::vector
, или лучше использовать std::list
и использовать std::list::iterator
чтобы за цикл пройти к срединному значению? Последний кажется менее надуманным, но и более уродливым.
Или есть еще и лучшие альтернативы для меня?