time-complexity - 使用大 O 表示法的复杂性描述有效形式
问题描述
根据wiki,我们应该以下列方式使用 Big O 表示法:
f(n) = O(g(x))
where=
不是读作“等于”,而是读作“是”。
因此,这意味着如果算法具有复杂性,例如n^2 + 2n + 5
,我们应该将其记为:
n^2 + 2n + 5 = O(n^2)
但在一些文章中,我看到人们将复杂性描述为:
O(n^2 + 2n + 5) = O(n^2)
反而
那么后一种表达方式是有效形式还是我们不能那样记呢?
解决方案
实际上,O(g(x)) 是一个集合,它应该用集合符号 f(x) \in O(g(x)) 来写。
作者通常会提到这一点,并说为简单起见,我们将为此使用 =。
推荐阅读
- java - javax.el.PropertyNotFoundException:在类型 [com.project70.Flight] 上找不到属性 [FlightNo]
- javascript - 如何使用传递给 JavaScript 函数的参数添加单击事件侦听器
- javascript - 为什么我的 javascript 添加类将图像显示变为无效果?
- python - 无法从“keras.callbacks”导入名称“CallbackList”
- java - 在图库中显示保存的图像
- python - Tensorflow-为什么我的 ANN 模型不学习
- php - 不允许使用 php slim 405 方法
- django - 从 Django 中的 requests.post 获取 XML 数据
- r - 如何将代码放入 R markdown 环境中?
- python - 用于根据python中的指定日期在azure容器中定位数据的函数