4 Analisa Algoritma
Definisi 1/2
Untuk dibandingkan
Metrik Fungsi
Dengan N data
Seberapa cepat
Definisi 2/2
Contoh
Logarithmic log N
Konstanta C (=constant)
Notasi 1/2
O(N) Big-Oh
(N) Big-Omega
o(N) Little-Oh
Batas bawah
Batas atas
(N) Little-Omega
Notasi 2/2
Contoh
Disederhanakan
O(n) N
Algoritma
func sequentialSearch(cari, data)
for posisi = 1 s/d N
if cari == data[posisi]
return posisi
Exception tidak ketemu
O(N) ???
(N) ???
O(N) N
(N) 1 C (constant)
Algoritma
func binarySearch(cari, data)
if banyak data ganjil
posisi = (banyak data + 1) / 2
else if banyak data genap
posisi = banyak data / 2
if data[posisi] == cari
return posisi
if data[posisi] < cari
return binarySearch(cari,
data dari 1 s/d posisi + 1
if data[posisi] < cari
return binarySearch(cari,
data dari posisi + 1 s/d banyak data
O(N) ???
(N) ???
O(N) log2 N
(N) 1 C
Algoritma
func hash(cari, data)
posisi = fungsiHash(cari)
return data[posisi]
http://j.mp/1jTn5TA
O(N) ???
(N) ???
O(N) 1 C
(N) 1 C
(N) C
Kinerja
O(N)
Sequential N
Hash C
Binary log2 N
Sequential C
Hash C
Binary C
(N)
Speed vs Size
Tradeoff
Contoh
Q&A