当我们在循环条件中使用 size() 函数时,它会计算每次迭代的大小吗?

问题描述 投票:0回答:1

例如, for(int i=1;i<=arr.size();i++)

在上面的示例中,arr.size() 是为每次迭代执行还是计算一次大小并将其存储在某处以供将来迭代使用。

如果每次迭代都执行 size() 那么它的时间复杂度是多少?

c++ loops
1个回答
0
投票

这可能取决于优化级别,但总的来说是的。每次循环时都会调用它。如果您考虑一下,循环可能会修改数组,因此

size()
不能保证是 const。

© www.soinside.com 2019 - 2024. All rights reserved.