Bentuk atau Kombinasi Notasi Big O

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