我们可以初始化一个vector
在C++11
通过以下方式
vector<int> v {1,2,3,4,5,6}
但是如果我想初始化一个 vector<int> v(1000)
怎么办?具有值 {1,1,1,1....1}
?
在 python 中它将是:
somelist [1] * 1000
我不确定 Python 在该行后面是否有循环,但我通过省略循环的目标是在性能和更简单的代码方面做得更好。
最佳答案
如果你想要一个包含 1000 个元素的 vector ,全部设置为 1
,那么 std::vector
has a constructor that does that for you :
vector<int> v(1000, 1);
此构造函数的时间复杂度必然是线性的,但您可以期望它非常快。您很难找到更快的替代方案,因此如果这是一个问题,您可能需要重新设计。
关于c++ - 在 C++ 中,如何在没有循环的情况下用值 {1,1,1,...,1} 初始化 vector<int> v(1000)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25397294/