push_back和insert在c ++ stl中哪个更快?

时间:2018-10-16 04:39:46

标签: c++ stl

现在在我的程序中,我要存储一些数据。我可以将它们存储在std::mapstd::vector中,两者都可以。但是我想知道哪个更快push_back in vectorinsert in map

1 个答案:

答案 0 :(得分:0)

根据https://en.cppreference.commap::insert的复杂度是“容器大​​小的对数”,而vector::push_back的复杂度是“摊余常数”。

这并不能告诉我们当容器容纳例如10个元素,但它确实告诉我们,对于大型容器,vector::push_back最快。

还请注意,向量允许您提前保留容量。