【发布时间】:2020-05-26 04:02:30
【问题描述】:
我需要一个支持以下操作的数据结构:
- 插入一个数字;
- 找出所有插入数字的中位数;
- (附加)查找所有插入数字的预先已知分位数(0-1);
最简单的方法是在每次插入后对数字进行排序,但这并不快。有更快的解决方案吗?
【问题讨论】:
-
因为你必须查看所有插入的数字来解决 2 和 3,所以 List
就足够了。 -
你见过这个 SO 问题吗? How to calculate the median of an array?
-
@Abra,
TreeSet不支持通过索引直接访问,所以在这种情况下获取中值并不快。 -
@Abra,链接的问题是我需要的。谢谢!
-
this 有帮助吗?
标签: java algorithm optimization data-structures