伪代码如下:
function range_product(A):
B ← 新的n*n矩阵
for i from 0 to n − 1 do
for j from i to n − 1 do
计算从A[i] 到 A[j] 的阶乘( A[i] ∗ A[i + 1] ∗ · · · ∗ A[j] )
储存结果到 B[i][j]
return B
伪代码如下:
function range_product(A):
B ← 新的n*n矩阵
for i from 0 to n − 1 do
for j from i to n − 1 do
计算从A[i] 到 A[j] 的阶乘( A[i] ∗ A[i + 1] ∗ · · · ∗ A[j] )
储存结果到 B[i][j]
return B
矩阵B一共(n^2)/2个数字要算,其中i个数字乘n-i次,计算次数和矩阵A的值无关,big O 和big Omega的值一样
O(n^3)
Ω(n^3)