Anda di halaman 1dari 4

ASYMPTOTIC NOTATION

Dalam hal menganalisis algoritma, dikenal istilah kompleksitas. Kompleksitas adalah sebuah fungsi F(N)
yang diberikan untuk waktu tempuh dan / atau kebutuhan storage dengan ukuran N input data.
Kompleksitas ini dapat berupa kompleksitas waktu & memori.

Beberapa definisi kompleksitas:

 Big-O

Sebuah fungsi t(n) dikatakan O(g(n)),


menunjukkan bahwa t є O(g(n)), jika t(n) memiliki batas atas beberapa kelipatan
konstan dari g(n) untuk semua nilai n.

Berikut ini beberapa contoh analisis terhadap algoritma menggunakan big-oh :

i. c←a+b

ii. for i ← 1 to n do
c←a+b
repeat

iii. for i ← 1 to n do
for j ← 1 to n do
c←a+b
repeat

repeat
Aturan Big-O :

Dapat ditentukan dengan salah satu dari 2 cara berikut :

1. Jika kompleksitsa waktu T(n) dari algoritma diketahui, maka kompleksitas waktu
asimptotik dapat langsung ditentukan denganmengambil suku yang mendominasi fungsi
T dan menghilangkan koefisien-nya.

contoh :

T(n) = n-1 = O(n)

T(n)=(n+1)/2=O(n)

2. Menghitung Big-O untuk setiap instruksi didalam algoritma kemudian menerapkan


teorema Big-O.

Aturan :

a. Pengisian nilai(assignment), perbandingan, operasi aritmatik, read, write :


membutuhkan waktu O(1)

b. Pengaksesan array, memilih field dari sebuah record : waktu O(1).

c. If C then S1 else s2, membutuhkan waktu Tc + max(Ts1, Ts2) yang dalam hal ini Tc,
Ts1, dan Ts2 adalah kompleksitas waktu C, S1, dan S2.

d. Perulangan for, kompleksitas waktunya adalah jumlah perulangan dikali dengan


kompleksitas waktu dari body perulangan.
e. e. While C do S atau repeat S until C. Untuk kedua perulangan tersebut
kompleksitas waktu yang dibutuhkan adalah jumlah perulangan dikali dengan
kompleksitas waktu dari body C dan S.

f. Prosedur dan fungsi. Waktu yang dibutuhkan untuk memindahkan kendali dari
fungsi yang dipanggil adalah O(1).

g. Untuk fungsi/prosedur rekursif, digunakan teknik perhitungan kompleksitas


dengan relasi rekurens.

 Big-Ω (omega)

Sebuah fungsi t(n) dikatakan (g(n)),


menunjukkan bahwa t є ((n)), jika t(n) memiliki batas bawah beberapa
kelipatan konstan dari g(n) untuk semua nilai n.

Digunakan untuk mendefinisikan batas bawah (lower bound) dalam kompleksitas


waktu.
T(n) = Ω (g(n)) (dibaca T(n) adalah Omega dari f(n))
T(n) berorde paling kecil g(N) bila terdapat koefisien C dan no sedemikian
sehingga :
T(n) ≥ C(f(n)) untuk n ≥ no
 Big-θ (theta)

Sebuah fungsi t(n) dikatakan θ(g(n)),


menunjukkan bahwa t(n) dalam θ(g(n)), jika t(n) berada di antara beberapa
kelipatan konstan yang positif dari g(n) untuk semua n.
Yaitu harus ada beberapa konstan positif c1 dan c2 dan beberapa bilangan
integer non-negative seperti n0.

T(n) = Θ (h(n)) (dibaca T(n) adalah tetha dari h(n))

T(n) berorde sama dengan h(n) jika T(n)=O(h(n)) dan T(n)= Ω(g(n))

Anda mungkin juga menyukai