1

次のようなケースがあるとします

T(n)=2T(n/4)+log(n). a=2, b=4, f(n)=log(n)

これはケース 1 である必要がありますn^(1/2)>log(n)。ケース 1 にもラムダがありますf(n)=O(n^((1/2)-lambda)。これは正しいです?そして、どうすればこのラムダを見つけることができますか?

4

2 に答える 2

0

定数ラムダ重要です。その目的は、ケース1とケース2の間にある奇妙なケースを考慮しないようにすることです。big-Oは上限のみであり、下限ではないため、ラムダの選択肢が少ないほど、ある意味で「優れています」。彼らはより多くの機能をカバーしていること。ただし、ラムダは正でなければならないため、ラムダの「最良の」選択はありません。Lambda = 10 ^ -3は、マスター定理のほとんどの処理がラムダの選択から生成を行わない理由を理解するのに十分な例を示しているはずです。

于 2012-06-01T15:13:28.450 に答える
0

f(n)=logn

Epsilon は 1/4 になる可能性があるため、

n (log b a-イプシロン) =n (log 4 2-1/4) =n (1/2-1/4) =n (1/4) .

f(n)=O(n (1/4) )。

したがって、マスター定理のケース 1 により、T(n)=Θ(n log b a )=Θ(n (1/2) ) となります。

于 2012-07-09T15:48:45.127 に答える