大O和运行时帮助

时间:2015-01-14 08:18:31

标签: big-o

 .

即使给出O(),我也不知道从哪里开始。我需要帮助找到求和和运行时以及如何获得T(n)或T(n,m)的表达式。

1 个答案:

答案 0 :(得分:0)

这只是一个包含一个操作的for循环。由于此操作始终打印相同的文本,因此总是需要相同的时间,或者换句话说“恒定时间”或O(1)。 for循环调用了n次,因此这段代码片段的复杂度为O(n)。

如果你想这样写它作为总和,你可以写

  

Σ k = 1,...,n O(1)=n⋅O(1)= O(n)

你也可以把它写成

  

T(n)= T(n-1)+ O(1)
  T(1)= O(1)

如果你扩展它,你得到上面的总和。

注意:关于for循环的复杂性以及许多不同类型,stackoverflow上有很多个问题。如果您进行一些研究,您会发现许多示例和信息,以了解有关时间复杂性的更多信息。