我正在编写一个将生成大量数据的程序。我想找到该数据的各种百分位数。
显而易见的方法是将数据存储在某种排序的容器中。是否有任何 Haskell 库提供自动排序并提供对任意索引的快速随机访问的容器?
另一种方法是使用无序容器并在最后执行排序。我不知道这是否会更快。无论哪种方式,我们仍然需要一个提供快速随机访问的容器。(一个数组,也许......)
建议?
(另一种选择是建立一个直方图,而不是将整个数据集保存在内存中。但由于目标是非常准确地计算百分位数,我不愿意走这条路。我也不知道我的范围数据直到我生成它......)