标签: c++ stl set time-complexity
我有一个C ++ set<int> s和int a,我知道它在s。我是否有O(log(size(s)))方式计算s小于或等于a的元素数量?我可以使用std::distance(s.begin(), s.find(a)) + 1,但需要O(size(s))时间。
set<int> s
int a
s
O(log(size(s)))
a
std::distance(s.begin(), s.find(a)) + 1
O(size(s))
或者,STL是否提供了一个容器,我可以将其用于类似集合的对象,允许O(log(size(s)))插入,删除和范围长度查询?