我正在解决一个问题,我意识到我需要一个数据结构,具有以下属性,但即使经过几个小时的搜索也找不到。我相信STL库太丰富了,不可能没有这个,因此在这里询问。
我已经研究了multiset(),但我无法在O(log(n))时间内完成第3个要求。它需要O(n)。
有什么提示可以轻松完成它吗?
- 能够在O(log(n))时间内插入任何元素(应能包含重复元素)
- 同样地,在O(log(n))时间内删除一个元素
- 如果我想查询范围[a,b]内元素的数量,则应在O(log(n))时间内获得该计数。
我已经研究了multiset(),但我无法在O(log(n))时间内完成第3个要求。它需要O(n)。
有什么提示可以轻松完成它吗?
multi_set
有一个count
成员,其时间复杂度为O(log(N) + K)
,其中N
是范围大小,K
是匹配数。 - TemplateRex