![](/img/trans.png)
[英]Efficient substitute for std::map::insert_or_assign with hint
[英]Complexity of std::map::insert_or_assign with hint
如果元素已经存在于地图中,则std::map::insert
或std::map::assign
的时间复杂度是多少? CPP-Reference表示与emplace_hint
相同,后者表示:
“如果在提示之前插入新元素,则为摊销常量”
但:
lower_bound
还是upper_bound
吗? 如果键已经存在,那么它甚至比这更简单,不需要将新节点添加到映射中,只需分配即可,因此再次摊销O(1)。 单词“在提示之前”暗示提示应略高于映射的键,即upper_bound
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.