嵌套循环的时间复杂度

嵌套循环的时间复杂度

我需要计算以下代码的时间复杂度:

for (i = 1; i <= n; i++)
{
  for(j = 1; j <= i; j++)
  {
   // Some code
  }
}

是吗O(n^2)?


小怪兽爱吃肉
浏览 709回答 3
3回答

梵蒂冈之花

解释这一点的一个快速方法是将其形象化。如果i和j都是0到N,则很容易看到O(N^2)。O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O在这种情况下,它是:O O&nbsp;O O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O&nbsp;O这是N^2的1/2,仍然是O(N^2)。

当年话下

实际上,它是O(n^2)。还请参见具有相同运行库的非常类似的示例。这里.
打开App,查看更多内容
随时随地看视频慕课网APP