0
for(i = 1; i < a; i++){
for(j = 1; j < b; j = j + 3){
if((i+j) % 2 == 0)
Func()
}
}
を呼び出して、私はそれがO(a*b)
とTheta(a*b)
あると思いました。機能とループ時間の複雑さのためにネストされたが、この場合
複雑さを正しく分析しましたか? i
が正、j % 2
非負あるときにi + j % 2
が正あるので、
え、* 'i'は、* *正である' jは%2 'は非負*であるを持っています'i + j%2'は* positive *であり、* never *は' 0'と等しくなります。したがって、 'Func()'は決して実行されません。 '(i + j)%2 == 0'を意味しますか? –
これは(i + j)%2 == 0です。混乱して申し訳ありません – NoSleep