这里有多复杂的复制表代码?

时间:2015-11-23 08:27:04

标签: big-o

我认为,下面的代码有O(n ^ 2 - n)的复杂性。但是我还没有看到过那种形式的大事。

def gugu(n:Int) = {
    for(i <- 2 to n) {
        for(k <- 1 to n) {
            println(s"$i * $k = " + (i * k))
        }
    }
}

1 个答案:

答案 0 :(得分:1)

你是正确的,总共会打印出n 2 - n个条目,因此你声称运行时为O(n 2 - n)是技术上正确。但是,通常情况下,当使用big-O表示法时,您会丢弃常数因子和低阶项,从而只留下占主导地位的增长项。这里,n 2 项占函数运行时的绝大部分,因此最好说运行时为O(n 2 ),因为它更清楚地传达运行时如何扩展。