添加到 std::vector 的中间

2024-05-07

有没有办法将值添加到 a 的中间vector在 C++ 中?假设我有:

vector <string> a;
// a gets filled up with "abcd", "wertyu", "dvcea", "eafdefef", "aeefr", etc

我想折断其中一根绳子,然后将所有的碎片放回原处vector。我该怎么做呢?我破坏的字符串可以在任何地方,index = 0,中间的某个地方,或者index =a.size() - 1.


您可以插入到vector在位置i通过写作

v.insert(v.begin() + i, valueToInsert);

然而,这并不是很有效;它的运行时间与插入元素后的元素数量成正比。如果您打算拆分字符串并将它们添加回来,那么最好使用std::list,它到处都支持 O(1) 插入和删除。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

添加到 std::vector 的中间 的相关文章

随机推荐