Professional Documents
Culture Documents
Review Mergesort and Solving Recurrence
Review Mergesort and Solving Recurrence
menggunakan
MergeSort.
- Combine
Gabungkan subsolusi dari submasalah menjadi solusi dari msalah awal.
Mengembalikan elemen yang telah terurut ke S dengan menggabungkan urutan
2. Asumsikan ()
untuk , sehingga () ( )
3. Buktikan bahwa ()
((
, jika
Jadi, () (
)
Dengan kata lain, harus memilih c cukup besar untuk menanganinya
() ()
Pencapaian Batas Ketat
Coba tunjukkan bahwa () (
)
Asumsikan ()
() ( )
( )
( )
Seperti
()
Guna untuk menunjukkan ketidaksamaan yang kita inginkan.
Terkadang untuk membuktikan langkah induktif, cobalah untuk memperkuat
hipotesis Anda.
T(n) (Jawaban yang anda inginka ) - (suatu bilangan > 0)
Perbaikan Bukti: idenya adalah untuk memperkuat hipotesis induktif dengan
mengurangi ketentuan rendah-order!
Asumsikan ()
() ( )
(
( )
( ) )
, jika
2. Metode Iterasi atau Pohon Rekursif
Merubah recurrence kedalam sebuah pohon struktur yang memiliki cabang yang
memperlihatkan nilai jumlah yang ada pada setiap tingkatan pada recurse. Prinsip dari
metode iterasi adalah menjabarkan rekurensi sebagai suatu bentuk penjumlahan yang
hanya bergantung pada n dan syarat awal. Dalam pohon rekursi, setiap node mewakili
nilai subproblem tunggal di suatu tempat di set fungsi rekursif.
Contoh :
T(n) = 3T(n/4)+ n
Bila bentuk rekursif diuraikan:
- Metode iterasi sering digunakan untuk menghasilkan tebakan untuk metode substitusi.
( )
( ) ( )
( ) ( ) ( )
( )
( )
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
- Harus tahu aturan dan memiliki intuisi untuk aritmatika dan seri geometrik.
- Matematika bisa berantakan dan sulit.
- Fokus pada dua parameter
berapa kali pengulangan perlu mengulangi untuk mencapai kondisi
batas
jumlah istilah yang timbul dari setiap tingkat proses iterasi
Pohon Rekursi
Sebuah pohon rekursi adalah cara mudah untuk memvisualisasikan apa yang terjadi ketika
rekursif adalah sebuah iterasi
Konstruksi pohon rekursi:
() ( ) ( )
Secara Geometri:
Sehingga Pohon Rekursi untuk
() ( ) ( )
3. Metode Master
Metode master menyediakan semacam cookbook untuk menyelesaikan persamaan
rekursif dalam bentuk:
() ( ) ()
dengan a 1 dan b > 1 adalah konstanta dan f(n) adalah fungsi yang secara asimtotik
positif.
Secara abstrak, T (n) adalah runtime untuk algoritma dan kita tahu bahwa:
- suatu submasalah ukuran n / b diselesaikan secara rekursif, masing-masing
dalam waktu T (n / b)
- f (n) adalah biaya membagi masalah dan menggabungkan hasil. Dalam merge-
sort () ( ) ()
Dalam metode master terdapat 3 kasus yang perlu diingat, namun sesudahnya
bentuk-bentuk rekursif dapat diselesaikan dengan lebih mudah.
a. Kasus 1
() ( ) ()
Jika, f(n) = O(n
log
b
(a-)
), > 0
maka T(n) = (n
log
b
a
)
Contoh:
() ( )
a=9, b=3, f(n)=n
Pada kasus diatas merupakan contoh kasus 1 karena
() (
) sehingga () (
)
b. Kasus 2
() ( ) ()
jika f(n) = (n
log
b
a
)
maka T(n) = (n
log
b
a
log n)
dhi, cost setiap langkah adalah n
log
b
a
sehingga, padahal ada sebanyak log n
langkah, jadi T(n) = (n
log
b
a
log n)
Contoh:
() ( )
dimana a=1, b=3/2, f(n)=1
Pada kasus diatas merupakan contoh kasus 2 karena
()
sehingga ()
c. Kasus 3
() ( ) ()
jika f(n) = (n
log
b
(a+)
), > 0 dan a f(n/b) c f(n) untuk c < 1
maka T(n) = (f(n))
dhi, f(n) > n
log
b
a
dgn faktor polinomial sehingga suku dominan adalah
f(n) + f(n/b) + f(n/b
2
) O(f(n))
Contoh:
() ( )
a=3, b=4, f(n)=n lg n
)
(
) (
) ()
Pada kasus diatas merupakan contoh kasus 3 karena f(n) mendominasi.