Для последовательности значений, как найти отсортированные средние 50% последовательности в Boost Accumulators?
Например, допустим, у меня есть следующая последовательность,
25, 21, 9, 13, 17, 19, 12, 29, 50, 97, 10, 11 .
Средние 50% -ые данные, которые я хотел бы получить, следующие:
13, 17, 19, 21 .
Конечно, можно отсортировать последовательность, которая теперь становится
9, 10, 11, 12, 13, 17, 19, 21, 25, 29, 50, 97 .
И тогда можно собрать средние 50% -ые данные.
Теперь, внутренняя структура Accumulators хранит и сортирует последовательность?Если да, возможно ли получить значение, которое находится в определенном индексе?
Чтение из здесь , я думаю, что среда Accumulators не хранит исходные данные, и эта структура не подходитдля проблемы, которую я пытаюсь решить.
Во время написания этой статьи я считаю несколько глупым пытаться сделать это с помощью Аккумуляторов.Тем не менее, я использовал его для других целей, и я ожидал решения в аккумуляторах.
Теперь, возможно ли построить структуру данных, которая бы эффективно поддерживала текущие и отсортированные средние 50% данные таким образом, чтобы размер структуры данных почти никогда не превышал половину размера последовательности?
Подумав некоторое время, я думаю, что возможно не удастся разработать такую структуру данных.При первой же мысли я подумал, что некоторые значения можно забыть / отбросить навсегда, предполагая, что они никогда не появятся в отсортированных средних 50%.Тем не менее, это предположение, вероятно, неверно, и некоторые значения могут появиться в отсортированном среднем 50% в зависимости от , которые еще должны прийти значения в последовательности.