27
2.7.3. Bentuk atau Kombinasi Notasi Big O
Notasi O diklasifikaskan dalam beberapa bentuk kombinasi [6]: Bentuk O1 memiliki arti bahwa algoritma yang sedang dianalisis
merupakan algoritma konstan. Hal ini mengindikasikan bahwa running time algoritma tersebut tetap, tidak bergantung pada n.
On berarti bahwa algoritma tersebut merupakan algoritma linier. Artinya, bila n menjadai 2n maka running time akan menjadi dua kali running
time semula. On² berarti bahwa algoritma tersebut merupakan algoritma kuadratik.
Algoritma kuadratik biasanya hanya digunakan untuk kasus dengan n yang berukuran kecil. Sebab, bila n dinaikkan menjadi dua kali semula,maka running
time algoritma akan menjadi empat kali semula. On³ berarti bahwa algoritma tersebut merupakan algoritma kubik. Pada
algoritma kubik, bila n dinaikkan menjadi dua kali semula, maka running time algoritma akan menjadi kuadrat kali semula.
Olog n berarti algoritma tersebut merupakan algoritma logaritmik. Pada kasus ini, laju pertumbuhan waktu lebih lambat dari pada pertumbuhan n.
algoritma yang termasuk algoritma logaritmik adalah algoritma yang memecahkan persoalan besar dengan mentransformasikannya menjadi beberapa
persoalan yang lebih kecil dengan ukuran sama. Basis algoritma tidak terlalu penting, sebab bila misalkan n dinaikkan menjadi dua kali semula, log n
meningkat sejumlah besar tetapan.
28
Bentuk On log n terdapat pada algoritma yang membagi pesoalan menjadi beberapa persoalan yang lebih kecil, menyelesaikan setiap persoalan
secara independen, kemudian menggabungkan solusi masing-masing persoalan. Sedangkan On berarti bahwa algoritma tersebut adalah algoritma
factorial. Algoritma jenis ini akan memproses setiap masukan dan menghubungkanya dengan n – 1 masukkan lainnya. Bila n menjadi dua kali
semula, maka running time algoritma akan mejadi factorial dari 2n . Menurut Rowel dkk. 2015 [7], grafik untuk masing-masing kelas
efisiensi algoritma dapat digambarkan secara visual. Gambar ini dapat digunakan untuk membandingkan bentuk garis atau kurva algoritma yang dianalisis. Berikut
ini adalah visualisasi kelas kompleksitas algoritma.
Gambar 2.8. Gambar Grafik Kompleksitas Algoritma Metode Big-O 1
29
Visualisasi kompleksitas algoritma menggunakan metode Big-O juga ditemukan
pada halaman
situs http:science.slc.edu~jmarshallcourses
2002springcs50BigO[8]. Berikut ini adalah gambar yang diambil dari halaman tersebut.
Gambar 2.9. Gambar Grafik Kompleksitas Algoritma Metode Big-O 2
30
BAB 3 ANALISA DAN PERANCANGAN
3.1. ANALISA SISTEM
3.1.1. Analisa kebutuhan Sistem
Pada penelitian ini akan dibangun sistem dengan menggunakan algoritma kriptografi blowfish, yang mampu melakukan proses enkripsi dan dekripsi
file. dalam proses enkripsi dan dekripsi dapat diketahui waktu proses, sehinggal akan dilakukan analisa terhadap waktu proses dengan menggunakan
notasi big-O. Sistem ini akan dibagun dengan menggunakan algoritma kriptografi yaitu algoritma kriptografi simetriBlowfish. Sistem ini akan
diimplementasikan ke dalam sebuah aplikasi yang dibangun menggunakan bahasa pemrograman Java. Dalam sistem enkripsi dan dekripsi yang
dibutuhkan user agar dapat berinteraksi dengan sistem antara lain : a.
Tombol masuk ke sistem b.
Tombol enkripsi dan dekripsi algoritma blowfish c.
Input kunci d.
Tombol browse input file e.
Tombol output file