わかりました、あなたは近くにいます。基本的に、コメントで述べたように、基本ケースは単純です。誘導の場合、T(n/2) が O(sqrt(n/2)) であるとすると、T(n) が O(sqrt(n)) であることを示します。
したがって、次のようになります。
T(n) = T(n/2) + sqrt(n) ; this is just your recurrence
< c sqrt(n/2) + sqrt(n) ; since T(n/2) is O(sqrt(n))
; wlog here, assume c > 4
= c sqrt(n) / sqrt(2) + sqrt(n)
= (c/sqrt(2) + 1) sqrt(n)
c > 4 の場合、c / sqrt(2) + 1 < c なので、
(c/sqrt(2) + 1) sqrt(n) < c sqrt(n)
それで
T(n) < c sqrt(n)
したがって、T(n) は O(sqrt(n)) です。
ここで、見逃した重要なポイントがいくつかあります。
1 つ目は、いつでも c を任意の値に増やすことができるということです。これは、大きな O は < しか必要としないためです。< cf(n) の場合は < df(n) であり、d > c.
2 つ目は、線 f(c) = c/sqrt(2) + 1 が c = sqrt(2) / (sqrt(2)-1) = 3.4143 付近で線 f(c) = c と交差することに注意することです。 (またはそう)、したがって、(c/sqrt(2) + 1) < c を取得するには、c を強制的に > この値にするだけです。4 は確かに機能するので、4 の由来です。
振り返ってみると、キーポイントをヒントとして与えるべきでした。私のせいです。ごめん!