complexity-theory - 三个嵌套for循环的渐近分析

标签 complexity-theory asymptotic-complexity big-theta

我想计算这个嵌套 for 循环的 theta 复杂度:

    for (int i = 0; i < n; i++) {
        for (int j = 0; j < i; j++) {
            for (int k = 0; k < j; k++) {
                // statement

我会说它是 n^3,但我认为这不正确,因为每个 for 循环都不是从 1 到 n。我做了一些测试:

n = 5 -> 10

10 -> 120

30 -> 4060

50 -> 19600

所以它必须在 n^2 和 n^3 之间。我尝试了求和公式等,但我的结果太高了。虽然是 n^2 log(n),但这也是错误的...

最佳答案

使用 Sigma Notation 是一种有效的循序渐进的方法:

enter image description here

关于complexity-theory - 三个嵌套for循环的渐近分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15052528/

相关文章:

algorithm - 如何通过迭代法求解 T(n) = T(n/2) + 2^n 的递归复杂度?

algorithm - 当函数中有一个 ceil 时,如何找到渐近复杂度? (2^(2^ceil(log2(n)))) = O( 2^n )?

算法复杂度

algorithm - 为什么这个算法的Big-O复杂度是O(n^2)?

arrays - 能否在常数时间 O(1) 内使用 n 个 Common CREW 处理器在大小为 n 的排序数组中找到元素 x?

math - 确定渐近复杂度

algorithm - 求解Ω和Θ(O,Omega和Theta表示法)

string - 重复加倍字符串的时间复杂度是多少?

java - 基本算法的复杂性?