对于std :: tr1 :: unordered_map,有没有类似于std :: map :: lower_bound的等效std :: algorithm?

Sit*_*esh 0 c++ algorithm unordered-map

对于std :: tr1 :: unordered_map,有没有类似于std :: map :: lower_bound的等效std :: algorithm?

Ser*_*eyA 6

不,没有,因为std::unordered_map不是一个有序的容器.

std::lower_bound 存在,但它只适用于有序容器:

要求:该元件e[first,last)应相对于所述表达被划分e < valuecomp(e, value).

C++ 11,[lower.bound](§25.4.3.1)

  • @ Rakete1111:"范围`[first,last)`必须至少部分排序,即相对于表达式元素`<value`或`comp(element,value)`进行分区.完全排序的范围符合此标准,调用`std :: partition`产生的范围也是如此. (2认同)