O(kn)是线性复杂度还是二次复杂度?或者它取决于k?

时间:2012-10-31 15:28:30

标签: algorithm complexity-theory time-complexity

如果n非常大,k非常小,我可以说O(kn)是线性复杂度吗?

如果k关闭到n / 2但不超过n / 2怎么办?我认为它仍然是线性复杂性吗?或二次复杂度O(n ^ 2)?

将O(kn)视为二次复杂度,是否存在大k的限制?

2 个答案:

答案 0 :(得分:15)

如果k是常数,那么任何O(kn)函数都是O(n),即线性

如果kn的函数且是O(n),那么任何O(kn)函数都是O(n ^ 2)。 n / 2是O(n)。此外,(n^2)/2 O(n),因此如果k接近n/2,则kn不是O(n)。

如果k不是O(n),则kn不是O(n ^ 2)。

答案 1 :(得分:0)

假设k和n是独立变量,说O(kn)是线性的是一个恰当的陈述。