`boost :: icl :: add_intersection`的时间复杂度

时间:2019-05-23 20:56:28

标签: c++ boost time-complexity c++14 boost-icl

我正在尝试将boost::icl::interval_map与给定的小boost::icl::interval相交(我将其称为“选择间隔”)。大多数情况下,交集是空的。但有时它可能包含一个间隔(或多个间隔,很少,因为选择间隔很小)。

我希望此操作的复杂度为O(log(n)+ p),其中n是映射中的间隔数,而p是结果中的间隔数。因为它可能是二进制搜索,然后迭代到不再与选择间隔相交的第一个间隔。

在我的情况下(小的选择间隔),p <2实际上始终是,所以我希望O(log(n))与简单的选择/查找相当。

但是看Boost's documentation,如果我理解正确的话,复杂度似乎是O(n)。我是否正确理解了文档,如果可以,那么为什么有人会这样呢?

0 个答案:

没有答案