私たちの再発が次の形をとるなら T(n)=aT(n/b)+f(n)、次に、Masterメソッドの「3番目のケース」を使用するには、次のホールドが必要です。
f(n)=Ω(nlogba+ϵ) いくつかのための ϵ>0 で、もし af(n/b)≤cf(n) 一定の c<1 そしてすべて十分に大きい n、その後 T(n)=Θ(f(n))
私たちの再発は次のように定義されます
T(n)=3T(n/4)+nlogn.
定義により、 a=3,b=4,f(n)=nlogn。
今それを示す必要があります f(n) 多項的により大きい nlogba。それが「f(n)=Ω(nlogba+ϵ)"上からの部分。定義 ϵ≈0.2これを達成します。その理由はlog43≈0.793 そして f(n)=Ω(n0.793+ϵ)。
私たちはそれを示すために残されています f(n)規則性条件を満たす。それが「af(n/b)≤cf(n) 一定の c<1 そしてすべて十分に大きい n」部分。
私たちは単に値をプラグインします a,b 取得するため:
af(n/b)=3(n/4)log(n/4).
私たちがしたのは、
n"
f(n) と差し込みます "
n/4」
これを見やすくするために、 k=n/4 そしてそれを観察する af(k)=aklogk。スワッピングk と n/4 我々は持っています
3(n/4)log(n/4)≤(3/4)nlogn=cf(n)
どこ
c=3/4。
これで必要な要件が完了しました。 T(n)=Θ(nlogn)。