gpt4 book ai didi

c++ - std::vector 很慢?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:14:24 25 4
gpt4 key购买 nike

这是我正在做的。

我有一个我实例化的类,它有一个 std::vector。

当我第一次实例化类时,这个 std::vector 是空的。

我使用它的方式是按指数方式添加并清除。例如:

添加数字,清除 vector :

添加 2 个数字,清除 vector :

添加3个数字,清除 vector ,

添加 4 个数字,清除 vector 。……

std::vector 是做我正在做的事情的最佳方式吗?我试图在构造函数中执行 reserve(100,000) 但这没有帮助。

是否有更适合我使用的容器?

谢谢

最佳答案

您的算法似乎是二次方的。如果你真的需要 100,000 个元素,你将添加一个元素 1 + 2 + 3 + ... + 100,000 次。这大约是 5,000,000,000 次操作。如此多的操作,无论多么微不足道,在标准电脑上都需要一段时间,无论您使用的是 std::vector 还是手工编写的汇编语言。

关于c++ - std::vector 很慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3223942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com