std::map
有一个insert
方法采用“提示”迭代器,如果提示正确,该迭代器会将插入时间从 log(n) 减少到恒定时间。很明显这是如何工作的,因为容器可以确保新添加的项目具有小于提示的键并且具有大于提示之前的项目的键。否则提示是错误的,它会执行正常的插入。
std::unordered_map
也有类似insert
的with提示功能。如果有的话,提示有什么作用?对我来说,如何使用另一个“提示”迭代器来加速哈希映射插入并不明显。
如果使用,什么是适当的“提示”。在std::map
中,通常通过调用lower_bound
地图来找到提示。