PERBANDINGAN ALGORITMA BOYER-MOORE DAN ALGORITMA RABIN-KARP PADA PENCARIAN TEKS DALAM UNDANG-
UNDANG PERLINDUNGAN ANAK
SKRIPSI
PRADITA OKTAVIANI 121401041
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2016
▸ Baca selengkapnya: teks ceramah anak-anak
(2)PERSETUJUAN
Judul : PERBANDINGAN ALGORITMA BOYER-
MOORE DAN ALGORITMA RABIN-KARP PADA PENCARIAN TEKS DALAM
UNDANG-UNDANG PERLINDUNGAN ANAK
Kategori : SKRIPSI
Nama : PRADITA OKTAVIANI
Nomor Induk Mahasiswa : 121401041
Program Studi : SARJANA (S1) ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATRA
UTARA
Diluluskan di
Medan, April 2016
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Amalia, S.T., M.T. Dr. Poltak Sihombing, M.Kom
NIP. 19781221 201401 2 001 NIP. 196203171991031001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom
PERNYATAAN
PERBANDINGAN ALGORITMA BOYER- MOORE DAN ALGORITMA RABIN-KARP
PADA PENCARIAN TEKS DALAM UNDANG-UNDANG
PERLINDUNGAN ANAK
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, Juni 2016
Pradita Oktaviani
121401041
PENGHARGAAN
Syukur Alhamdulillah selalu terucap kehadirat Allah SWT yang dengan rahmat dan
hidayah-Nya penulis dapat menyelesaikan menyusun skripsi ini, sebagai syarat untuk memperoleh
gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
Pada pengerjaan skripsi dengan judul Perbandingan Algoritma Boyer-Moore dan
Algoritma Rabin-Karp pada Pencarian Teks dalam Undang-Undang Perlindungan Anak,
penulis menyadari bahwa banyak pihak yang turut membantu, baik dari pihak keluarga,
sahabat dan orang-orang tercinta yang mendukung dalam pengerjaan skripsi ini. Dalam
kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Bapak Prof. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Opim Salim Sitompul, MSc selaku Dekan Fakultas Ilmu Komputer
dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer
Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara
sekaligus Dosen Pembimbing I yang telah memberikan arahan, kritik dan saran serta
motivasi kepada penulis dalam pengerjaan skripsi ini.
4. Ibu Amalia, S.T., M.T. selaku Dosen Pembanding II yang telah banyak memberikan
arahan, motivasi dan masukan yang sangat berharga kepada penulis.
5. Bapak M. Andri Budiman, S.T.,M.Comp.Sc.,M.E.M. selaku Dosen Pembanding I
yang telah banyak membarikan kritik dan saran yang membangun kepada penulis
6. Bapak Amer Sharif, S.Si.,M.Kom. selaku Dosen Pembanding II yang telah banyak
membarikan kritik dan saran yang membangun kepada penulis
7. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan Teknologi
Informasi USU, terkhusus Ibu maya Silvia, Ibu dian Rachmawati, Ibu siti Dara
Bapak Ade Candra, Bapak Syurahbil Hadi yang selama ini sudah menjadi orang tua
kedua bagi penulis.
8. Keluarga tercinta yang selalu mendoakan serta memberikan kasih sayang, semangat,
serta dorongan kepada penulis dan memberi segalanya tanpa pamrih, ayahanda
Prayitno, Ibunda Rosini, Kakak tercinta Prayanti Dewi Anggraini, Pratika Dwi
Septiani dan Pratiwi Tria May Latifani.
9. Teman-teman yang selalu menghibur, memberi semangat dan membantu saat
penulisan skripsi, Aulia Tarindah Putri, Citra Eka Mutia, Indri Hidayati, Khalida Zia,
Muzdalifa, Rizky Adawiyah, dan Tika Linavia.
10.Teman-teman kuliah, Stambuk 2012 terkhusus KOM A teman-teman seperjuangan
saat menimba ilmu di S1 Ilmu Komputer.
11.Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat penulis
ucapkan satu demi satu yang telah membantu penyelesaian laporan ini.
Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah memberikan
bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.
Medan, Juni 2016
Penulis,
Pradita Oktaviani
ABSTRAK
Anak adalah seseorang yang belum berusia 18 (delapan belas) tahun, termasuk anak yang dalam kandungan. Kekerasan terhadap anak sering kali terjadi di Indonesia. Jumlah kasus kekerasan pada anak di Indonesia terus meningkat. Selain tindak kekerasan terhadap anak, anak juga sering menjadi korban eksploitasi pihak yang tidak bertanggung jawab. Kebanyakan dari anak Indonesia belum memahami betul apa saja hak-hak dan perlindungan yang sepantasnya mereka dapatkan dari negara. Pentingnya memahami hak-hak dan perlindungan bagi anak merupakan pembekalan yang baik bagi anak untuk melindungi diri dari pelanggaran hak anak. Untuk memberikan solusi tentang masalah undang-undang perlindungan anak, maka penulis mencoba merancang sebuah aplikasi pencarian
undang-undang perlindungan anak berbasis android dengan menggunakan algoritma Boyer-Moore
dan Rabin-Karp. Hasil dari pengujian dan perbandingan dari kedua algoritma : kompleksitas
kedua algoritma sama, yaitu : θ(mn). Sedangkan real-running-time algoritma Boyer-Moore
memiliki rata-rata penemuan string : 0,091818181818s dan algortima Rabin-Karp memiliki
rata-rata penemuan string : 0,618181818282s.
An Comparison Boyer-Moore Algorithm and Rabin-Karp Algorithm On Searching Text in Children Protection Laws
ABSTRACT
Child is someone whom under 18 (eighteen) years old, including child whom still in womb. Child abuse often happens in Indonesia. The amount of child abuse in Indonesia is getting higher. Not only child abuse, but also children in Indonesia become a victim of exploitation by the irresponsible part. Mostly children in Indonesia not quite understand what are their rights and the protections that they should has from the country. The importance children to understand what is their rights and their protections are really good suply for children to protect them from violation of their rights. To give an solution about the problems of children protection laws, author try to devise an aplication for children protection laws based on
android with applying Boyer-Moore algorithm dan Rabin-Karp algrithm. The result of testing
and comparison from both algorithms are: the complexity of both algorithms are the same :
θ(mn), Meanwhile the real-running-time Boyer-Moore algorithm has average time to found
string is : 0,091818181818s and Rabin-Karp algorithm has average time to found string is :
0,618181818282s.
Keywords : Child, expliotation, algorithm, Boyer-Moore, Rabin-Karp
DAFTAR ISI
Daftar Gambar xii
Daftar Lampiran xiii
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 Metodologi Penelitian 3
1.7 Sistematika Penulisan 4
Bab 2 Landasan Teori
Bab 3 Analisis dan Perancangan Sistem
3.1 Analisis Sistem 23
3.1.3.1.1 Case Folding 26
3.1.3.2 Use Case Diagram 28
3.1.3.3 Activity Diagram 29 3.1.3.4 Sequence Diagram 30
3.1.3.5 Flowchart Sistem 31
3.2 Perancangan Sistem 35 3.2.1 Menu Intro 35
3.2.2 Menu Pemilihan 36 3.2.3 Menu Tentang 36 3.2.4 Menu Utama 37 Bab 4 Implementasi dan Pengujian Sistem 4.1 Implementasi 38
4.1.1 Implementasi Algoritma Boyer-Moore dan Rabin-Karp 38
4.2 Antarmuka Sistem 38
4.2.1 Menu Intro 39
4.2.2 Menu Pemilihan 39
4.2.3 Menu Tentang 40
4.2.4 Menu Utama 40
4.3 Hasil Pengujian 44
4.3.1 Komplesitas Algoritma Big θ 45
4.3.2 Real-Running-Time 53
Bab 5 Kesimpulan dan Saran 5.1 Kesimpulan 61
5.2 Saran 62
Daftar Pustaka 63
Listing Program A-1
Curriculum Vitae B-1
DAFTAR TABEL
Nomor
Tabel Nama Tabel Halaman
2.1
Proses Pencarian Suffix (a) Proses Pencarian Suffix (b) Proses Pencarian Suffix (c) Proses Pencarian BmGs Proses Pencarian BmGs (a) Proses Pencarian BmGs (b) Proses Pencarian BmGs (c) Proses Pencarian BmGs (d) Proses Pencarian BmGs (e) Proses Pencarian BmGs (f) Proses Pencarian BmGs (g) Proses Pencarian BmGs (h) Proses Pencarian BmGs (i) Proses Pencarian BmGs (j) Proses Pencarian BmGs (k) Proses Pencarian BmGs (l) Proses Pencarian BmGs (m) BmBc
Proses Pencarian BmBc (a) Proses Pencarian BmBc (b)
Proses Pencocokan String
Proses Pencocokan String (a)
Proses Pencocokan String (b)
Proses Pencocokan String (c)
Mencari Nilai Hash
Memeriksa Pencocokan String (a)
Memeriksa Pencocokan String (b)
Memeriksa Pencocokan String (c)
Memeriksa Pencocokan String (d)
Kebutuhan Fungsional Kebutuhan Non-Fungsional Use Case Masukkan String Use Case Memilih Algoritma
Keterangan Gambar Rancangan Interface Menu Intro
Keterangan Gambar Rancangan Interface Menu Pemilihan
Keterangan Gambar Rancangan Interface Menu Tentang
Keterangan Gambar Rancangan Interface Menu Utama
4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9
Kompleksitas Boyer-MooreSuffixes
Kompleksitas Boyer-MooreBmGs
Kompleksitas Boyer-Moore Check
Kompleksitas Rabin-Karp
Kompleksitas Rabin-Karp (a)
Running-Time Boyer-Moore Running-Time Rabin-Karp
Running-Time Boyer-Moore dan Rabin-Karp
46 47 48 50 51 53 56 58
DAFTAR GAMBAR
Nomor
Gambar Nama Gambar Halaman
3.1 Sequence Diagram Flowchart Sistem Flowchart Boyer-Moore Flowchart Rabin-Karp
Rancangan Interface menu Intro
Rancangan Interface menu Pemilihan
Rancangan Interface menu Tentang
Rancangan Interface menu Utama
Menu Intro
Menu Pemilihan Menu Tentang
Hasil Pencarian Algoritma Boyer-Moore (a)
Hasil Pencarian Algoritma Boyer-Moore (b)
Hasil Pencarian Algoritma Rabin-Karp (a)
Hasil Pencarian Algoritma Rabin-Karp (b)
Grafik Running-Time Boyer-Moore
Grafik Running-Time Rabin-Karp
Grafik Running-Time Boyer-Moore dan Rabin-Karp
DAFTAR LAMPIRAN
Halaman
Listing Program A-1
Curriculum Vitae B-1