我有我的考試這個問題,我無法弄清楚: 計算大O以下:大O計算混淆
1)
for i = 0 to n // n - 0 + 2 = (n+2)
for j = 0 to m // m - 0 + 2 = (m+2)
x = x + 1
所以沒有答案變得(n + 2)(m + 2)與O(nm)作爲bigO?
我有我的考試這個問題,我無法弄清楚: 計算大O以下:大O計算混淆
1)
for i = 0 to n // n - 0 + 2 = (n+2)
for j = 0 to m // m - 0 + 2 = (m+2)
x = x + 1
所以沒有答案變得(n + 2)(m + 2)與O(nm)作爲bigO?
肯定。
你有2個循環。所以你有O(外*內)。外循環執行約n
次。內循環執行回合m
次。
所以O(nm)爲適當。
是O(nm)的
我不認爲你最初的數學是正確的,雖然
,因爲你有(n+1)(m+1)
但你展開此之後,你會得到類似m*n+m+n+1
並自m * n個在這裏你會得到最高的秩序O(m*n)
所以答案成爲(n + 2)(m + 2)與O(nm)作爲bigO?
爲什麼n + 2?這將是n + 1個如果0到n包含Ñ,或者這將是Ñ,如果Ñ是排他性的。因此運行時間將我(N + 1)第(m + 1)或(nm)的。
然而,O(nm)的將是在所有情況下。