Modul 2 - Notasi Big O (Minggu 6)
Modul 2 - Notasi Big O (Minggu 6)
TEOREMA 1
• Bila :
𝑇 𝑛 = 𝑎𝑚 𝑛𝑚 + 𝑎𝑚−1 𝑛𝑚−1 + ⋯ + 𝑎1 𝑛 + 𝑎0
adalah polinom derajat m maka
𝑻 𝒏 = 𝑶(𝒏𝒎 )
• Contoh :
Jika diketahui : 𝑇 𝑛 = 2𝑛2 + 6𝑛 + 1
Maka, 𝑂 𝑛 = 𝑂(𝑛2 )
TEOREMA 2
Misalkan 𝑇1 𝑛 = 𝑂 𝑓 𝑛 Contoh 𝑇1 𝑛 = 𝑂 𝑛
dan 𝑇2 𝑛 = 𝑂 𝑔 𝑛 , maka: dan 𝑇2 𝑛 = 𝑂 𝑛2 , maka:
1. 𝑇1 𝑛 + 𝑇2 𝑛 = 𝑂 𝑓 𝑛 +𝑂 𝑔 𝑛 1. 𝑇1 𝑛 + 𝑇2 𝑛 = 𝑂 𝑛 + 𝑂 𝑛2
= 𝑂 max 𝑓 𝑛 , 𝑔 𝑛 = 𝑂 max 𝑛, 𝑛2
= 𝑂(𝑛2 )
2. 𝑇1 𝑛 . 𝑇2 𝑛 = 𝑂 𝑓 𝑛 .𝑂 𝑔 𝑛 2. 𝑇1 𝑛 . 𝑇2 𝑛 = 𝑂 𝑛 . 𝑂 𝑛2
= 𝑂 𝑓 𝑛 .𝑔 𝑛 = 𝑂 𝑛 . 𝑛2
= 𝑂(𝑛3 )
4. 𝑓 𝑛 =𝑂 𝑓 𝑛 4. 𝑛2 = 𝑂 𝑛2
Aturan Menentukan Kompleksitas Waktu Asimtotik
• Jika kompleksitas waktu 𝑇(𝑛) dari algoritma sudah diketahui, maka langsung
gunakan teorema big-O
PANDUAN :
1. Untuk jenis instruksi : Pengisian nilai, perbandingan, operasi aritmatika, read atau
write membutuhkan waktu 𝑶(𝟏)
2. Untuk mengakses elemen larik atau memilih field tertentu dari sebuah record
membutuhkan waktu 𝑶(𝟏)
read(x); 𝑂(1)
x:=x+a[k]; 𝑂 1 + 𝑂 1 + 𝑂 1 = 𝑂(1)
writeln(x); 𝑂(1)
Aturan Menentukan Kompleksitas Waktu Asimtotik
3. IF Condition then Statement1 else Statement2 , membutuhkan waktu
𝑻𝒄 + 𝐦𝐚𝐱(𝑻𝑺𝟏 , 𝑻𝑺𝟐 )
Contoh :
Contoh :
Contoh :
i:=2; 𝑂(1) Kompleksitas waktu asimtotik:
while i <= n do 𝑛−1 , 𝑂 1 𝑇 𝑛 =𝑂 1 + 𝑛−1 . 𝑂 1 +𝑂 1 +𝑂 1
begin 𝑇 𝑛 =𝑂 1 + 𝑛−1 . 𝑂 1
jumlah:=jumlah+a[i]; 𝑂(1) 𝑇 𝑛 = 𝑂 1 + 𝑂(𝑛 − 1)
i := i+1; 𝑂(1) 𝑇 𝑛 = 𝑂 1 + 𝑂(𝑛)
end; 𝑇 𝑛 =𝑂 𝑛