【问题标题】:Algorithm Time Complexity算法时间复杂度
【发布时间】:2013-02-07 10:21:58
【问题描述】:

我正在研究一种算法,它在最坏的情况下会执行一些这样的操作:

N + (N -1) + (N - 2) + (N - 3) + ... + [N - (N -1)] + (N -N)

在大 O 符号分析中,这个算法是线性的、二次的还是其他的?

非常感谢。

【问题讨论】:

  • 你怎么看?给我们一些分析。
  • 这不是家庭作业.. 如果问题很愚蠢,我很抱歉。我在这里找到了一个很好的答案:*.com/questions/8261895/big-oh-notation
  • 这是这篇文章的链接 :)
  • 对不起 :) 我的意思是*.com/questions/8261895/big-oh-notation
  • 为了将来参考,Wolfram|Alpha 是你在这些事情上的朋友。

标签: algorithm big-o time-complexity


【解决方案1】:

这是数学。你的总和正好等于N*(N+1)/2

【讨论】:

  • 谢谢。在您回答后,我发现了这个有用的链接 *.com/questions/8261895/big-oh-notation
【解决方案2】:

您的公式是“小高斯”。等于n(n+1)/2。

这是 O( (n*n + n)/2 ) = O(n2)

【讨论】: