关于logarithmic growth的维基百科文章是一个存根。我在stackoverflow上读到的许多答案都说明了使用0
基于对数函数的过程或函数的效率(我假设[见下文]它是0 [零]而不是O [字母如M,N,O,P,Q],但如果错误,请更正我的假设)和n
或N
。
有人可以更好地解释有关常见计算解释的对数解释吗?也许就时间(以秒为单位)(毫秒也欢迎,只是试图在实际生活时间差异中概念化......),尺寸和/或重量方面?
我经常看到以下内容:(请随意添加其他内容)
我的假设是基于代码块外的0 [零]没有斜线,而inside a code block a 0 does have a slash through it
。
答案 0 :(得分:1)
这意味着执行时间(或其他资源)是数据量的某种功能。让我们说你要花5分钟炸掉10个气球。如果功能是O(1),那么炸毁50个气球也需要5分钟。如果它是O(n),则炸掉50个气球需要25分钟。
O(log n)意味着随着事物的扩大,管理更大的n变得更容易(它遵循对数增长)。假设你想在f(n)项目的目录中找到一个地址。假设搜索100个条目的目录需要6.64秒。 [6.64 = log_2(100)]然后搜索200个条目可能只需7.64秒。这是对数增长。