1
A
回答
2
O(N)
这些功能不缓存它们的结果。
在任何stl参考中搜索标题为“复杂性”的部分,例如
http://www.cplusplus.com/reference/algorithm/max_element/
或
http://www.sgi.com/tech/stl/min_element.html
http://www.sgi.com/tech/stl/max_element.html
时间复杂度规范是用于几乎所有方法和功能STL说明书的一部分。
记忆的复杂性通常不指定..
有很好的理由,这些[低级别]功能不缓存最小值/最大值结果:
如果你想迅速获得容器的最小/最大元素经常被修改,则可以
(1)cahe /维持最小值/最大值自己
(2)使用堆或树木代替矢量
0
一个好地方,检查STL组件的复杂性:http://www.sgi.com/tech/stl/
相关问题
- 1. Kolmogorov复杂度
- 2. 渐近复杂度
- 3. 时间复杂度
- 4. Android OnClickListener复杂度
- 5. 时间复杂度
- 6. 堆栈复杂度
- 7. stl list - 复杂度
- 8. 将标量乘以复数valarray
- 9. 如何计算复杂度?
- 10. 如何降低复杂度?
- 11. 时间复杂度(Java,Quicksort)
- 12. 算法复杂度时间
- 13. 非大O复杂度
- 14. 二叉树复杂度
- 15. Python3 list.count()时间复杂度
- 16. 算法分析(复杂度)
- 17. MDX查询复杂度
- 18. McCabe的圈复杂度
- 19. 对数时间复杂度
- 20. 正确时间复杂度
- 21. 运行时间复杂度
- 22. 减少时间复杂度
- 23. 环复杂度减少
- 24. 圈复杂度差异in_array
- 25. 排序时间复杂度
- 26. Cypher查询复杂度
- 27. 'if'in'时间复杂度
- 28. 渐近复杂度python
- 29. JQUERY时间复杂度
- 30. 提高RNNs的复杂度
他们怎么能比'O(N)'其他的什么吗? – ildjarn 2011-06-11 05:19:17
当第一次被叫时,是的,他们应该花'O(N)'的时间。但也许有可能将它存储在一个字段中,以便将来的调用可以获取存储的值,而不是再次检查它。 – loudandclear 2011-06-11 05:23:18
它是可能的(如果你保持跟踪数组的变化值) - 但它没有指定。也就是说,你可能(虽然我怀疑它)有一个不同的实现,但是标准指定了O(n)。 – nimrodm 2011-06-11 06:29:31