gpt4 book ai didi

c++ - STL性能O(ln(n))题

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:55:15 29 4
gpt4 key购买 nike

拜托,有人可以解释一下吗:

如果文档说 STL std::vector finding element speed performace = O(ln(n)),这是什么意思。

O(ln(n)) - 什么是“O”,我可以在哪里读到它?

我可以在哪里阅读有关其他 STL 容器性能的信息

非常感谢

最佳答案

Big O notation是一种衡量算法如何随着其处理的数据规模增长而扩展的方法。

如果一个 vector 通常是 O(n),则查找一个元素,当 vector 被排序并且您使用其中一个时,它只是 O(lg(n)) binary search family of algorithms .

每个算法的复杂性在标准和任何引用资料中都有规定(例如上面的 std::lower_bound 链接)。

顺便说一句,lnlog,以 e 为底,但所有对数的复杂度都相同,因此即使二分查找仅执行 >lg (log2) 操作从技术上讲它是 O(ln(n)) 是正确的。

关于c++ - STL性能O(ln(n))题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4935017/

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