BAB IV IMPLEMENTASI DAN PENGUJIAN
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2016
PERBANDINGAN ALGORITMA BOYER MOORE DAN ALGORITMA BRUTE FORCE DALAM PEMBUATAN KAMUS BAHASA MANDARIN – INDONESIA
– INGGRIS PLATFORM ANDROID
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
IVAN GRACE HALIM 1010401086
PROGRAM S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2016
ii
PERSETUJUAN
Judul : Perbandingan Algoritma Boyer Moore dan Brute Force Dalam Pembuatan Kamus Bahasa Mandarin – Indonesia – Inggris Platform Android
Kategori : Skripsi
Nama : Ivan Grace Halim
Nomor Induk Mahasiswa : 101401086
Program Studi : S1 Ilmu Komputer
Fakultas : Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara
Komisi Pembimbing :
Pembimbing II Pembimbing I
Dian Rachmawati, S.Si., M.Kom Dr. Poltak Sihombing, M.Kom NIP. 198307232009122004 NIP. 196202171991031001
Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
Dr. Poltak Sihombing, M.Kom NIP. 196202171991031001
PERNYATAAN
PERBANDINGAN ALGORITMA BOYER MOORE DAN BRUTE FORCE DALAM PEMBUATAN KAMUS BAHASA MANDARIN – INDONESIA –
INGGRIS PLATFORM ANDROID
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juli 2016
Ivan Grace Halim 101401086
iv
PENGHARGAAN
Puji dan syukur penulis ucapkan kepada Tuhan Yang Maha Esa atas limpahan rahmat, kasih dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana Komputer pada Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Pada pengerjaan skripsi ini, penulis menyadari bahwa banyak campur tangan pihak yang turut membantu dan memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Bapak Prof. Dr. Runtung Sitepu, SH., M.Hum., selaku Rektor Universitas Sumatera Utara
2. Bapak Prof. Dr. Opim S Sitompul, M.Si., selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informas Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara dan selaku Dosen Pembimbing I.
4. Ibu Maya Silvi Lydia, B.Sc., M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
5. Ibu Dian Rachmawati, S.Si., M.Kom selaku Dosen Pembimbing II yang telah memberikan bimbingan, saran, nasehat dan masukan kepada saya dalam pengerjaan skripsi ini.
6. Bapak Dr. Syahril Efendi S.Si., M.IT., selaku Dosen Pembanding I yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.
7. Bapak M. Andri Budiman, ST., M.Comp,Sc., M.E.M selaku Dosen Pembanding II yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini
8. Seluruh dosen Program Studi S1 Ilmu Komputer Fasilkom-TI USU dan semua pegawai Program Studi S1 Ilmu Komputer Fasilkom-TI USU.
9. Ayahanda Kui Hie dan Ibunda Tentri Melinda Pasaribu yang telah memberikan do‟a, dukungan, perhatian serta kasih sayang yang tulus serta pengorbanan yang tidak ternilai harganya.
10. Abangda dan Adinda Andy Surya Halim, Hansen Yudha Halim dan Melki Sedek Hosea Halim yang tidak bosan – bosannya menunggu, memberikan motivasi, bantuan dan dukungan serta kata – kata pencerahan yang membangun setiap waktu.
11. Teman-teman seperjuangan mahasiswa S1-Ilmu Komputer stambuk 2010, Yohannes Silitonga, Gunalan Anggirasa , Andri Agasi, Arief Try Hidayat, Mego Suntoro, Suhaili Hamdi, Muhammad Pristian, Septy Diana Sari Saragih, dan teman-teman lain yang telah memberikan motivasi, arahan dan perhatiannya. 12. Teman-teman sepermainan Bang Vavan Setiyo, Roy Alexander Sirait, Yogie
Wiranatha, Jambe Family, Riska Maya Sari, Jatrie Tieta Andini, Lovita Justine, Uthy Pohan, yang selalu memberikan pencerahan, pengarahan, dan membuat suasana pengerjaan skripsi lebih menyenangkan.
13. Kepada Yohanes Silitonga, Gunalan Anggirasa, dan adik Rio Sinulingga yang sangat membantu dalam pengerjaan skripsi dan tidak bosannya memberikan arahan dan masukkan untuk penyelesaian skripsi.
14. Adik-adik angkatan 2011, 2012, 2013 dan 2014 yang telah membakar semangat untuk menyelesaikan penyelesaian skripsi ini.
15. Dan yang terakhir, sahabat, adik, kekasih penulis Deby Ratna Sari yang selalu ada seiring waktu mendampingi serta menjadi penyemangat bagi penulis dalam segala hal.
Penulis menyadari bahwa skripsi ini masih jauh dari sempurna, oleh karena itu penulis menerima saran dan kritik yang bersifat membangun demi kesempurnaan skripsi ini, agar dapat bermanfaat bagi kita semua.
Medan, Juli 2016 penulis :
Ivan Grace Halim
vi
ABSTRAK
Kebutuhan Masyarakat terhadap layanan teknologi berbasis IT sangat bervariasi, ketersediaan suatu perangkat mobile yang dapat membantu memecahkan suatu permasalahan sehari hari adalah salah satu kebutuhan masyarakat, khususnya berbasis android. Kamus Mandarin yang telah banyak beredar dalam bentuk buku penggunaannya menyulitkan, karena pengguna harus mencari arti dan istilah secara manual. Oleh karena itu, dibutuhkan aplikasi perangkat lunak berbasis android untuk menghasilkan kamus Bahasa Mandarin yang dapat memudahkan semua orang mencari dan memahami arti kata Bahasa Mandarin. Dalam membuat kamus dibutuhkan metode pencarian string, metode pencarian string yang digunakan dalam pembuatan kamus ini adalah Algoritma Boyer Moore dan Algoritma Brute Force, Algoritma
Boyer Moore dan Algoritma Brute Force memiliki cara kerja yang berbeda, Algoritma Boyer Moore mencocokkan karakter dari sebelah kanan ke kiri pattern, dan Algoritma Brute Force mencocokkan karakter dengan membandingkan satu per satu karakter dari
kiri ke kanan. Algoritma Boyer Moore memiliki running time yang lebih cepat dari Brute Force yaitu dengan perbedaan 0.75ms. Algoritma Boyer Moore dan Algoritma
Brute Force sama – sama memiliki fase pencarian kompleksitas waktu Big Ө ( m × n
), namun Algoritma Boyer Moore lebih cepat karena memiliki perbandingan karakter teks 3n sedangkan Algoritma Brute Force memiliki perbandingan karakter teks 2n.
Kata Kunci : Pencocokan String, Algoritma Boyer Moore, Algoritma Brute Force, Kamus Bahasa Mandarin, Android
ABSTRACT
The needs for IT-based technology is varied, the availability of a mobile application which can solve any problems a day is one of people need now, especially based on Android. Mandarin dictionary that has been widely circulated in analog form is difficult , because users must search for meaning and terms manually . Therefore , it takes an android software application to produce Mandarin Dictionary to facilitate what everyone is looking for and to understand the meaning of Mandarin words. In making the dictionary, string matching methods are needed, the search method strings used in the making of this dictionary is the Boyer-Moore string search algorithm and algorithm Brute Force , algorithm Boyer Moore and algorithms Brute Force has a different way , Boyer-Moore string search algorithm to match characters from the right to left pattern and Brute Force algorithm matching characters by comparing one by one character from left to right. Boyer Moore algorithm has a running time that is faster than the Brute Force, the difference is 0.75ms. Boyer Moore algorithm and the same algorithm Brute Force - have the same time complexity of the searching phase in Ө (m × n), but Boyer Moore algorithm has 3n text character comparisons, Brute Force algorithm has 2n expected text character comparisons.
Keyword : String Matching Boyer Moore Algorithm, Brute Force Algorithm, Mandarin Dictionary, Android
viii DAFTAR ISI Halaman Persetujuan ii Pernyataan iii Penghargaan iv Abstrak vi Abstract vii
Daftar Isi viii
Daftar Tabel x Daftar Gambar xi Bab 1 Pendahuluan 1.1 Latar Belakang 1 1.2 Rumusan Masalah 2 1.3 Batasan Masalah 2 1.4 Tujuan Penelitian 3 1.5 Manfaat Penelitian 3 1.6 Metode Penelitian 4 1.7 Sistematika Penulisan 5
Bab 2 Tinjauan Pustaka
2.1 Algoritma Boyer Moore 6
2.1.1 Kelebihan Algoritma Boyer Moore 6
2.1.3 Pencarian Dengan Algoritma Boyer Moore 2.2 Algoritma Brute Force
2.2.1 Kelemahan dan Kelebihan Algoritma Brute Force
8 10 11
2.3 Bahasa Mandarin 14
2.4 Sejarah Android 15
2.5 Jenis Jenis Android 16
2.6 Eclipse 22
2.7 SQLite 22
Bab 3 Analisis Dan Perancangan Sistem
3.1 Analisis Sistem 23
3.1.1 Analisis Masalah 23
3.1.2 Analisis Persyaratan 24
3.1.2.1 Analisis Persyaratan Fungsional 24 3.1.2.2 Analisis Persyaratan Non-Fungsional 25
3.2 Pemodelan 25
3.2 1 Use Case Diagram 26
3.2.2 Activity Diagram 27
3.2.2.1 Activity Diagram Pencarian Boyer Moore 27 3.2.2.2 Activity Diagram Pencarian Brute Force 28 3.2.3 Sequence Diagram
3.2.3.1 Sequence Diagram Tampil Kamus
29 30
3.2.4 Flowchart Sistem 31
3.2.4.1 Flowchart Gambaran Umum Sistem 3.2.4.2 Flowchart Proses Boyer-Moore 3.2.4.3 Flowchart Proses Brute Force
31 32 33
x
3.3 Pseudocode
3.3.1 Pseudocode Algoritma Boyer Moore 3.3.2 Pseudecode Algoritma Brute Force 3.4 ERD (Entitiy Relationship Diagram)
3.3 Perancangan Sistem 34 34 35 35 37
3.3.1 Antarmuka Halaman Utama 37
3.3.2 Antarmuka Pilih Pencarian 39
3.3.3 Antarmuka Pilih Data 3.3.4 Antarmuka Pilih Tentang
40
Bab 4 Implementasi Dan Pengujian Sistem
4.1 Implementasi Sistem 42 4.1.1 Halaman Utama 42 4.1.2 Pilihan Pencarian 4.1.3 Pilihan Data 4.1.4 Pilihan Tentang 43 44 45 4.2 Pengujian Sistem 45
4.2.1 Pengujian Pada 1 Karakter 46
4.2.1.1 Pengujian Boyer-Moore Pada 1 Karakter 4.2.1.2 Pengujian Brute Force Pada 1 Karakter 4.2.2 Pengujian Pada 2 Karakter
4.2.2.1 Pengujian Boyer Moore Pada 2 Karakter
46 47 48 48 4.2.2.2 Pengujian Brute Force Pada 2 Karakter 50 4.3 Hasil Pengujian 4.3.1 Pengujian 3 Karakter 4.3.2 Pengujian 4 Karakter 52 52 53
4.3.3 Pengujian 5 Karakter 53
4.3.4 Pengujian 6 Karakter 54
4.3.5 Hasil Perbandingan Running Time Pencocokan String 55
Bab 5 Kesimpulan Dan Saran
5.1 Kesimpulan 57 Daftar 5.2 Saran Pustaka 58 59
xii