恒定时间复杂度:O(x ^ c)

时间:2015-06-08 15:47:00

标签: algorithm time-complexity

我知道如果我们使用常数操作,time complexityconstant

那么如果我们有以下情况呢?

例如,

操作使用固定大小1000的数组。无论那个操作或输入的大小是多少,计算量总是(1000 ^ 1000)(计算与输入的大小无关)

我们仍然可以说它的时间复杂度仍为O(1),即使我们的操作次数为(1000^1000)吗?

3 个答案:

答案 0 :(得分:1)

绝对。随着N的增加,计算时间保持不变。在进行渐近分析时,该常数的值无关紧要。

答案 1 :(得分:1)

是的,我想是的。

复杂性主要用于指示算法增长的顺序。也就是说,如果输入增加,算法将如何缩放。 现在,鉴于算法使用的空间和时间无论输入如何都是恒定的,我们可以说它具有恒定的空间或时间复杂度。

答案 2 :(得分:0)

是的,任何常数。那个“大O”的东西是一组函数,遵循这个定义

f(x) ϵ O(g(x)) <-> ∃m,c ∀n≥m f(n) ≤ c g(x)

正如你在这里看到的,你可以简单地选择c作为你的巨大常数,从而把它放在O(1)类中。

出于显而易见的原因,这不应被视为关于现实生活表现的陈述。