我的算法的时间复杂度

time compexity of my algorithm

我在查找某些算法的 O-time 时遇到了问题。我搜索了很多 O 符号,但每当我的练习变得更难时,我找不到解决方案。现在我遇到了一个算法,但我真的找不到解决方案。 我搜索了 Stack Overflow,但没有找到真正帮助我的东西。我找到的最好的 post 是 this。 它只说了我所知道的,并没有真正说明如何计算或查看它。第二个 post 确实说了一些带有解决方案的算法,但没有说如何找到它。

代码

`for i = 1; i <= n; i++
    for j = 1; j <= i; j++
        for k = 1; k <= i; k++
            x = x + 1
`

问题

这个算法的时间复杂度是多少?

另外,有什么好的教程可以帮助我更好地理解这件事吗?

如果有堆栈溢出也很抱歉post,但我找不到合适的帮助我。

  • 定义 i 的循环运行 n 次。
  • 定义 j 的循环运行 n * n/2
  • 定义 k 的循环运行 n * n/2 * n/2

= n * 1/2 * n * 1/2 * n

= n * n * n * 1/2 * 1/2

= O(n^3)

你也可以尝试从变量x的最终值来推断,它应该大致与n^3

成正比