我正在分析一个算法,我想知道我是否正确。对于这个算法,我只计算那些带有***的行中的乘法。
以下是该算法:
所以我从最内层开始,可以看到有两个操作(两个乘法)。
现在我正在查看最内层的两个循环,所以我可以确定p = p * 20 * z被执行了
因此,在总共有两个乘法的情况下,它会发生
然后最后,“i”循环恰好发生n次,因此总共是
这是我的思维过程。我正确吗?谢谢。
以下是该算法:
所以我从最内层开始,可以看到有两个操作(两个乘法)。
现在我正在查看最内层的两个循环,所以我可以确定p = p * 20 * z被执行了
(j)+(j-1)+(j-2)+(j-3)... 1
次。这恰好等于j(j + 1)/ 2
。因此,在总共有两个乘法的情况下,它会发生
2 *(j(j + 1)/ 2)
次。然后最后,“i”循环恰好发生n次,因此总共是
n(2 *(n(n + 1)/ 2))
。这是我的思维过程。我正确吗?谢谢。
n
。你那里有j
。 - Karoly Horvath