int n = 500;
for(int i = 0; i < n; i++)
for(int j = 0; j < i; j++)
sum++;
我的猜測是這只是一個O(N^2),但是我給了我懷疑。Big-O for-loop運行時分析
int n = 500;
for(int i = 0; i < n; i++)
for(int j = 0; j < i*i; j++)
sum++;
似乎是一個O(N^3)
int n = 500;
for(int i = 0; i < n; i++)
for(int j = 0; j < i*i; j++)
if(j % i == 0)
for(k = 0; k < j; k++)
sum++
O(N^5)?
因此,對於每個循環j有不同的值。如果這是一個非常棘手的問題,那麼請幫忙。謝謝。
大哦定義請記住,O符號只是縮放行爲。只要問問自己,如果輸入的大小發生了變化,操作的數量如何相應地增加 - 並且你擁有它。 – Trilarion 2015-02-07 22:27:44
我已投票結束該問題。已經有數百個類似的問題,並且它們太窄而無法用於一般。我所說的問題是重複提供的工具,以允許人們自己計算big-O。 – 2015-02-08 03:28:32