この答えを通して、とTは負でないと仮定します。証明は、単調なgに対してf = Θ (g )のときはいつでも機能します。これには、f = Θ (n )であるMergesortの例と、多項式成長率(またはΘ (n a log b n )でさえある関数)が含まれます。fTf=Θ(g)gf=Θ(n)Θ(nalogbn)
最初に、が単調な非減少である場合を考えてみましょう(この仮定は後で緩和します)。私たちはあなたのサンプル再発に集中
T (N )= T (⌊ N / 2 ⌋ )+ T (⌈ N / 2 ⌉ )+ F (N )。
この繰り返しには、T (0 )とT (1 )の 2つの基本ケースが必要です。私たちは、その仮定を作るT (0 )f
T(n )= T(⌊ N / 2 ⌋ )+ T(⌈ N / 2 ⌉ )+ F(n )。
T(0 )T(1 )私たちも後にリラックスし、。
T(0 )≤ T(1 )
は単調な非減少であると主張します。我々はそれを完全な誘導によって証明T (N + 1 )≥ T (N )。これがために与えられ、N = 0、そうしましょうN ≥ 1。我々は持っている
T (N + 1 )T(n )T(N + 1 )≥ T(n )n = 0N ≥ 1
これはことを意味
T(2⌊ログ2 N⌋)≤T(N)≤T(2⌈ログ2 Nを⌋)。
その場合はT(2
T(n + 1 )= T(⌊(n+1)/2⌋)+T(⌈(n+1)/2⌉)+f(n+1)≥T(⌊n/2⌋)+T(⌈n/2⌉)+f(n)=T(n).
T(2⌊log2n⌋)≤T(n)≤T(2⌈log2n⌋).
、完了です。2のべき乗の解の形式が
T (n )= Θ (n a log b n )の場合、これは常に
当てはまります。
T(2m)=Θ(T(2m+1))T(n)=Θ(nalogbn)
それでは、という仮定をリラックスさせて。T '(0 )= T '(1 )= min (T (0 )、T (1 ))のみとまったく同じ方法で定義された新しい再発T 'を考えます。私たちは、その誘導によって証明することができますT "(N )≤ T (N )T(0)≤T(1)T′T′(0)=T′(1)=min(T(0),T(1))T′(n)≤T(n)。同様に、我々は、新しい再発定義することができるを満足Tの"(0 )= T "(1 )= 最大値(T (0 )、T (1 ))、その後、T (N )≤ T "(nは)。マスター定理を呼び出すと、T ′ = Θ (h )およびT ″ = Θ (T′′T′′(0)=T′′(1)=max(T(0),T(1))T(n)≤T′′(n)T′=Θ(h)のために同じ関数 Hなど T = Θ (H )も同様。T′′=Θ(h)hT=Θ(h)
ここで、が単調であるという仮定を緩和しましょう。ある単調関数gについてf = Θ (g )と仮定します。したがって、C G (N )≤ F (N )≤ C G (N )いくつかのために、C 、C > 0およびnは十分な大きさ。簡単にするために、n = 0と仮定します。一般的なケースは、前の段落のように処理できます。ここでも、2つの繰り返しT ′を定義しますff=Θ(g)gcg(n)≤f(n)≤Cg(n)c 、C> 0nn = 0(それぞれ f)を c g 、C gに置き換えます。もう一度、マスター定理は同じ結果(定数倍まで)を与えます。これは、2のべき乗のみで元の再帰を解くことによって得られるものと同じ(定数倍まで)です。T′、T」fc g、Cg