小编CCD*_*CCD的帖子

是否存在具有对数时间插入,删除和查找(带距离)的排序数据结构?

我有一个排序数组,我在其中使用二进制搜索(std::upper_bound)O(logn)及时找到小于特定值的项目数.
现在我想在保持排序的同时插入和删除此数组.我希望整体的复杂性O(logn).

我知道,使用二叉搜索树或者std::multiset我可以做的插入,删除和UPPER_BOUND的O(logn),但我不能够做得到的距离/指数(std::distance是O(n)用于集)在对数时间.

那么有没有办法实现我想做的事情?

c++ algorithm data-structures

6
推荐指数
1
解决办法
190
查看次数

标签 统计

algorithm ×1

c++ ×1

data-structures ×1