现在在我的程序中,我要存储一些数据。我可以将它们存储在std::map
或std::vector
中,两者都可以。但是我想知道哪个更快push_back in vector
或insert in map
?
答案 0 :(得分:0)
根据https://en.cppreference.com,map::insert
的复杂度是“容器大小的对数”,而vector::push_back
的复杂度是“摊余常数”。
这并不能告诉我们当容器容纳例如10个元素,但它确实告诉我们,对于大型容器,vector::push_back
最快。
还请注意,向量允许您提前保留容量。