にサイズm
とn
のプログラムを書き込んだのは、それぞれO(log(m + n))
の時間の複雑さです。2つの変数を持つBig-O表記
私はO(log(m) + log(n))
の解決策を考え出すことができます。それは上記の時間要件を満たしていますか?
私はので、それは肯定的だと思う。別の言い方をすれば
log(m) + log(n) = log(m*n) <= log((m+n)^2) = 2*log(m+n) = O(log(m+n))
、k = 2
とm0 = n0 = 1
が存在します。 m > m0 and n > n0
の場合、log(m*n) <= k*log(m + n)
があります。
欠陥がありますか、それとも正しいですか? a
一定の与えられたより一般的に
、我々は同じ理由でlog(n^a) = O(log(n))
は言うことができますか?
Davidの回答に感謝します。 これは、ウィキペディアにBig-O notationで言及されています
"We may ignore any powers of n inside of the logarithms. The set O(log n) is exactly the same as O(log(n^c))."
あなたはO(log(n^a))= O(log(n))と言っていますか?申し訳ありませんが本当に質問を理解することはできません。 –
@GiorgiNakeuriはい、big-O表記は* a *> 0を定数として扱いますが、実際は同じ関数クラスです。 –
ああ申し訳ありません:)私はこれを見て、O(n^a)= O(n)のようなものを見ています。少し寝なければならない。もちろん、それは本当です。 –