我有以下僞代碼:這個程序是二次的還是線性的?
for i=1 to 3*n
for j=1 to i*i
for k=1 to j
if j mod i=1 then
s=s+1
endif
next k
next j
next i
當我要分析的部分S = S + 1中執行的次數,假設該操作需要一定的時間,我結束了一個二次複雜性或它是線性的嗎? n的值可以是任何正整數。
,我所做的計算如下:
是它假定比較'如果j MOD I = 1'具有可忽略成本? – CollinD
關於什麼?就程序而言,'n'是這裏唯一的「變量」嗎? – shafeen
也許O(n^4)甚至? – Thilo