n
O(n)
3. Metode Teorema Master
- Bentuk umum : T(n) = a T(n/b) + f(n)
- Theorema: Bila a>1 dan b>1 adalah tetapan dan f(n) adalah suatu fungsi, kemudian
andaikan T(n) didefinisikan pada bilangan bulat positif melalui rekurensi:
( )
( ) ( )
( ) ( ) ( )
( )
( )
4
4
4
log
log 1
log 3
0
( ) 3 / 4
3 / 4 3 /16
3 / 4 3 /16 3 / 64
3 / 4 9 /16 27 / 64
( ) 3 / 4 9 /16 27 / 64 ... 3 (1)
3
4
4 ( )
( )
n
i
n
i
T n n T n
n n T n
n n n T n
n n n T n
T n n n n n T
n n
n o n
O n
=
= + (
= + + ( (
= + + + ( ( (
= + + + ( ( (
= + + + + +
| |
s + O
|
\ .
s +
s
T(n) = a T(n/b) + f(n), dimana n/b bisa dinyatakan sebagai n/b atau n/b( maka
T(n) dapat dibatasi secara asimptotik, sebagai berikut:
a. Bila f(n) = O(
), dimana c>0 tetapan, maka T(n) = O(
)
b. Bila f(n) = O(
), maka T(n) = O(
)
c. Bila f(n) = O(
) dimana c>0 tetapan, dan bila a.f(n/b) s c.f(n) dengan
konstanta c < 1, dan n cukup besar, maka T(n) = O(f(n)).
Contoh :
- T(n) = 4T(n/2) + n
= n
T(n) = O(
) (a)
- T(n) = 2T(n/2) + n
= n = f(n)
T(n) = O(lg n) (b)
- T(n) = 2T(n/2) + n
()
T(n) = O(
) (c)