什么是(a)最坏情况,(b)最佳情况,以及(c)以下函数的平均情况复杂度,它进行矩阵乘法
for i=1 to n do
for j=1 to n do
C[i,j]=0
for k=1 to n do
C[i,j]=C[i,j]+A[i,k]*B[k,j]
end {for}
end {for}
end {for}
你如何证明这种复杂性?
答案 0 :(得分:0)
i
,j
和k
都从1
转到n
。
因此,最好,平均和最差的情况是 O(n * n * n)= O(n ^ 3)
对于每个n
可能的i
,n
j
个n
j
,有n
k
个。
这给了n * n * n
执行内循环。
答案 1 :(得分:0)
O(n ^ 3),因为在每个嵌套循环中,N乘以N,因为你有一个嵌套循环3次完全处理整个N,那将是< strong> NXNXN = N ^ 3