Implementasi Algoritma Rabin-Karp Pada Kamus Jawa – Indonesia Berbasis Android
IMPLEMENTASI ALGORITMA RABIN - KARP PADA KAMUS
JAWA - INDONESIA BERBASIS ANDROID
SKRIPSI
ARIF SETIAWAN
121401051
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
i
IMPLEMENTASI ALGORITMA RABIN - KARP PADA KAMUS
JAWA - INDONESIA BERBASIS ANDROID
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana llmu Komputer
ARIF SETIAWAN
121401051
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
ii
PERSETUJUAN
Judul
: IMPLEMENTASI ALGORITMA RABIN-KARP
PADA KAMUS JAWA-INDONESIA BERBASIS
ANDROID
Kategori
: SKRIPSI
Nama
: ARIF SETIAWAN
Nomor Induk Mahasiswa
: 121401051
Program Studi
: SARJANA (S1) ILMU KOMPUTER
Departemen
: ILMU KOMPUTER
Fakultas
: ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan,
Agustus 2016
Komisi Pembimbing :
Pembimbing 2
Pembimbing 1
Herriyance S.T.,M.Kom
Prof. Dr. Iryanto M.Si
NIP. 198010242010121002
NIP. 194604041971101001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom
NIP. 196203171991031001
Universitas Sumatera Utara
iii
PERNYATAAN
IMPLEMENTASI ALGORITMA RABIN-KARP PADA KAMUS
JAWA- INDONESIA BERBASIS ANDROID
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan,
Agustus 2016
Arif Setiawan
121401051
Universitas Sumatera Utara
iv
PENGHARGAAN
Syukur Alhamdulillah selalu terucap kehadirat Allah SWT dengan rahmat dan hidayah-Nya
penulis dapat menyelesaikan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana
Komputer (S.Kom), pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
Pada pengerjaan skripsi dengan judul Implementasi Algoritma Rabin-Karp Pada
Kamus Jawa – Indonesia Berbasis Android, 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 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.
4. Ibu Dr. Maya Silvi Lydia M.Sc selaku dosen pembimbing akademik sekaligus
sebagai Dosen Pembanding I penulis yang telah banyak memberikan arahan
dan motivasi bagi penulis.
5. Bapak Prof. Dr. Iryanto M.Si selaku Dosen Pembimbing I yang telah
memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam
pengerjaan skripsi ini.
6. Bapak Herriyance S.T.,M.Kom selaku Dosen Pembimbing II yang telah
banyak memberikan arahan, motivasi dan masukan yang sangat berharga
kepada penulis.
7. Bapak Ade Chandra S.T., M.Kom selaku dosen Pembanding II penulis yang
telah memberikan saran kepada penulis
8. Bapak Presiden RI ke-6 , Susilo Bambang Yudho Yono berserta jajaran
Mentri Pendidikan, terimakasih atas program bidikmisi, berkat program
bidikmisi saya bisa menempuh pendidikan sarjana.
Universitas Sumatera Utara
v
9. Keluarga tercinta, adik, ayah, kakak, abang terutama Ibunda Trisnawati yang
selalu mendoakan serta memberikan kasih sayang, semangat, serta dorongan
kepada penulis dan memberi segalanya tanpa pamrih.
10. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan
Teknologi Informasi USU.
11. Teman-teman terdekat yang selalu menghibur, memberi semangat dan
membantu saat penulisan skripsi terkhusus buat Heru terimakasih atas bantuan
dan waktunya, kak Murni, Parlindungan, Johan S dan Putri terimakasih atas
motivasi yang diberikan.
12. Teman-teman kuliah, Stambuk 2012 terkhusus KOM B teman-teman
seperjuangan saat menimba ilmu di S1 Ilmu Komputer.
13. 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,
Agustus 2016
Penulis,
Arif Setiawan
Universitas Sumatera Utara
vi
ABSTRAK
Perkembangan jaman memiliki dampak yang cukup besar terhadap keberadaan suatu bahasa
daerah, bahasa Jawa seiring perkembangan jaman semakin lama semakin sedikit penuturnya
terutama Sumatera Utara. Untuk mengatasi hal itu ada beberapa upaya yang dapat dilakukan,
salah satunya adalah dengan membuat kamus, kamus yang di buat haruslah praktis dan cepat
dalam penggunannya. Kamus yang dimaksud adalah kamus berbasis android. Untuk
membuat kamus berbasis android dapat menggunakan algoritma string matching, salah satu
algoritma string matching adalah algoritma Rabin-Karp, algoritma Rabin-Karp melakukan
pencocokan string berdasarkan nilai hash pada teks dan nilai hash pada pattern. Dari pada
melakukan pemeriksaan terhadap setiap posisi dari teks ketika terjadi pencocokan pola, akan
lebih baik dan efisien melakukan pemeriksaan hanya jika
teks yang sedang diproses
memiliki kemiripan seperti pada pattern. Penelitian ini menghasilkan sebuah aplikasi kamus
berbasis android yang mana bilangan basis yang digunakan untuk membangkitkan nilai hash
sangat mempengaruhi kecepatan pencarian serta kecepatan rata rata yang dihasilkan untuk
mencari kata dengan panjang string berbeda-beda untuk 10 kali percobaan adalah 136.5 ms.
Kata Kunci : Android, Kamus, Rabin-Karp, String Matching,
Universitas Sumatera Utara
vii
Rabin-Karp Algorithm Implementation in Java-Indonesian
Dictionary Based on Android
ABSTRACT
Trend of the era had a considerable impact on the existence of a regional language, the Java
language as the trend time fewer and fewer speakers, especially on North Sumatra. To
overcome this, there are some efforts to be made, one of which is to create a dictionary, a
dictionary that is made to be practical and quick in use. Dictionary in question is a dictionarybased android. To create a dictionary based on Android can use string matching algorithm,
one of the string matching algorithm is the Rabin-Karp algorithm, Rabin-Karp algorithm
perform string matching hash value based on the text and the hash value in the pattern. Rather
than conduct an examination of each position of the text in the event of pattern matching, will
be better and more efficient examination only if the text under the process has similarities to
the pattern. This research resulted in an android-based dictionary application which the base
number is used to generate a hash value searching greatly affect the speed and average speed
generated for the word with a different length of string to 10 times the experiment is 136.5 ms.
Keyword : Android, Dictionary, Rabin-Karp, String Matching
Universitas Sumatera Utara
viii
DAFTAR ISI
Halaman
Persetujuan
ii
Pernyataan
iii
Penghargaan
iv
Abstrak
vi
Abstract
vii
Daftar Isi
viii
Daftar Tabel
xi
Daftar Gambar
xii
Daftar Lampiran
xiv
Bab 1 Pendahuluan
1.1 Latar Belakang
1
1.2 Rumusan Masalah
2
1.3 Tujuan Penelitian
2
1.4 Batasan atau Ruang Lingkup Penelitian
2
1.5 Manfaat Penelitian
3
1.6 Metodologi Penelitian
3
1.7 Sistematika Penulisan
4
Bab 2 Tinjauan Pustaka
2.1 Kamus
5
2.2 String Matching
5
2.2.1 Algoritma Rabin-Karp
5
2.3 Android
11
2.4 Penelitian Yang Relevan
11
Universitas Sumatera Utara
ix
Bab 3 Analisis dan Perancangan
3.1 Analisis Sistem
12
3.1.1 Analisis Masalah
12
3.1.2 Analisis Persyaratan
13
3.1.2.1 Persyaratan Fungsional
13
3.1.2.1 Persyaratan Non-Fungsional
14
3.1.3 Pemodelan
14
3.1.3.1 Use Case Diagram
14
3.1.3.2 Activity Diagram
16
3.1.3.3 Sequence Diagram
17
3.1.3.4 Kamus Data
18
3.1.3.5 Flowchart Gambaran Umum Sistem Kamus
19
3.1.3.6 Flowchart Algoritma Rabin-Karp
20
3.1.3.7 Pseudocode Algoritma Rabin-Karp
22
3.2. Perancangan Sistem
22
3.2.1 Antarmuka Splashscreen
23
3.2.2 Antarmuka Menu Utama
23
3.2.3 Antarmuka Sub Menu
24
3.2.4 Antarmuka Sub Menu Tentang Penulis
25
3.2.5 Antarmuka Sub Menu Tutorial
25
3.2.6 Antarmuka Menu Cari
26
3.2.7 Antarmuka ListView Indo-Jawa
27
3.2.8 Antarmuka ListView Jawa-Indo
28
3.2.9 Antarmuka Info Pencarian
28
3.2.10 Antarmuka Sub Menu Keluar
29
Bab 4 Implementasi dan Pengujian Sistem
4.1 Implementasi
30
4.1.1 Implementasi Algoritma Rabin-Karp
30
4.2 Pengujian Sistem
36
4.2.1 Pengujian pencarian kata menggunakan algoritma
Rabin-Karp
4.3. Tampilan Sistem
4.3.1. Menu Utama
36
40
41
Universitas Sumatera Utara
x
4.3.2. Sub Menu
43
Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan
44
5.2 Saran
45
Daftar Pustaka
46
Universitas Sumatera Utara
xi
DAFTAR TABEL
Halaman
Tabel 2.1. Percobaan 1
7
Tabel 2.2. Percobaan 2
7
Tabel 2.3. Percobaan 3
7
Tabel 2.4. Percobaan 4
7
Tabel 2.5. Percobaan 5
8
Tabel 2.6. Percobaan 6
8
Tabel 2.7. Percobaan 7
8
Tabel 2.8. Percobaan 8
8
Tabel 2.9. Percobaan 9
9
Tabel 2.10. Percobaan 10
9
Tabel 2.11. Percobaan 11
9
Tabel 2.12. Percobaan 12
9
Tabel 2.13. Percobaan 13
9
Tabel 2.14. Percobaan 14
10
Tabel 2.15. Percobaan 15
10
Tabel 2.16. Percobaan 16
10
Tabel 2.17. Percobaan 17
10
Tabel 3.1. Use Case Memilih Fungsi Terjemahan
15
Tabel 3.2. Proses Pencarian Kata
16
Tabel 3.3. Kamus Data
18
Tabel 4.1.Teks Tersedia Didalam Database
33
Tabel 4.2. Nilai Hash Kolom Jawa
34
Tabel 4.3. Nilai Hash Kolom Indonesia
35
Tabel 4.4. Pengujian Pencarian Kata/String
36
Tabel 4.5 Hasil Pengujian Pencarian Kata/String dengan
Algoritma Rabin-Karp
40
Universitas Sumatera Utara
xii
DAFTAR GAMBAR
Halaman
Gambar 3.1. Diagram Ishikawa
13
Gambar 3.2. Use Case Diagram
15
Gambar 3.3. Activity Diagram Pencarian Kata
17
Gambar 3.4. Sequence Diagram Pencarian Kata
18
Gambar 3.5. Flowchart Gambaran Umum Sistem Kamus dengan
Algoritma Rabin-Karp
19
Gambar 3.6. Flowchart Algoritma Rabin-Karp
20
Gambar 3.7. Rancangan Antarmuka Splashscreen
23
Gambar 3.8. Rancangan Antarmuka Menu Utama
23
Gambar 3.9. Rancangan Antarmuka Sub Menu
24
Gambar 3.10. Rancangan Antarmuka Menu Tentang Penulis
25
Gambar 3.11. Rancangan Antarmuka Menu Turorial
25
Gambar 3.12. Rancangan Antarmuka Menu Cari
26
Gambar 3.13. Rancangan Antarmuka ListView Hasil Indo – Jawa
27
Gambar 3.14. Rancangan Antarmuka ListView Hasil Jawa – Indo
28
Gambar 3.15. Rancangan Antarmuka Dialog Informasi Pencarian
28
Gambar 3.16. Rancangan Antarmuka Konfirmasi Keluar
29
Gambar 4.1. Contoh Hasil Pencarian Kata Jawa – Indo
31
Gambar 4.2. Contoh Informasi Hasil Pencarian Kata Jawa – Indo
31
Gambar 4.3. Contoh Hasil Pencarian Kata Indo – Jawa
32
Gambar 4.4. Contoh Informasi Hasil Pencarian Kata Indo – Jawa
32
Gambar 4.5. Hasil Pencarian kata “abot”
36
Gambar 4.6. Informasi Pencarian kata “abot”
36
Gambar 4.7. Hasil Pencarian kata “ba”
37
Gambar 4.8. Informasi Penncarian kata “ba”
37
Gambar 4.9. Hasil Pencarian kata “lelembut”
37
Gambar 4.10. Informasi Pencarian kata “lelembut”
37
Universitas Sumatera Utara
xiii
Gambar 4.11. Hasil Pencarian kata “isor”
37
Gambar 4.12. Informasi Penncarian kata “isor”
37
Gambar 4.13. Hasil Pencarian kata “emboh”
38
Gambar 4.14. Informasi Pencarian kata “emboh”
38
Gambar 4.15. Hasil Pencarian kata “maaf”
38
Gambar 4.16. Informasi Pencarian kata “maaf”
38
Gambar 4.17. Hasil Pencarian kata “merah”
38
Gambar 4.18. Informasi Pencarian kata “merah”
38
Gambar 4.19. Hasil Pencarian kata “pagi”
39
Gambar 4.20. Informasi Pencarian kata “pagi”
39
Gambar 4.21. Hasil Pencarian kata “roh”
39
Gambar 4.22. Informasi Pencarian kata “roh”
39
Gambar 4.23. Hasil Pencarian kata “kebun”
39
Gambar 4.24. Informasi Pencarian kata “kebun”
39
Gambar 4.25. Tampilan Splashscreen
41
Gambar 4.26. Tampilan Menu Utama
41
Gambar 4.27. Tampilan Tab Jawa – Indo
42
Gambar 4.28. Tampilan Tab Indo – Jawa
42
Gambar 4.29. Tampilan Tutorial
42
Gambar 4.30. Tampilan Sub Menu
43
Gambar 4.31. Tampilan Sub Menu Tentang Penulis
43
Gambar 4.32. Tampilan Sub Menu Keluar
43
Universitas Sumatera Utara
xiv
DAFTAR LAMPIRAN
Halaman
Listing Program
A-1
Tabel ASCII
B-1
Curriculum Vitae
C-1
Universitas Sumatera Utara
JAWA - INDONESIA BERBASIS ANDROID
SKRIPSI
ARIF SETIAWAN
121401051
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
i
IMPLEMENTASI ALGORITMA RABIN - KARP PADA KAMUS
JAWA - INDONESIA BERBASIS ANDROID
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana llmu Komputer
ARIF SETIAWAN
121401051
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
ii
PERSETUJUAN
Judul
: IMPLEMENTASI ALGORITMA RABIN-KARP
PADA KAMUS JAWA-INDONESIA BERBASIS
ANDROID
Kategori
: SKRIPSI
Nama
: ARIF SETIAWAN
Nomor Induk Mahasiswa
: 121401051
Program Studi
: SARJANA (S1) ILMU KOMPUTER
Departemen
: ILMU KOMPUTER
Fakultas
: ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan,
Agustus 2016
Komisi Pembimbing :
Pembimbing 2
Pembimbing 1
Herriyance S.T.,M.Kom
Prof. Dr. Iryanto M.Si
NIP. 198010242010121002
NIP. 194604041971101001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom
NIP. 196203171991031001
Universitas Sumatera Utara
iii
PERNYATAAN
IMPLEMENTASI ALGORITMA RABIN-KARP PADA KAMUS
JAWA- INDONESIA BERBASIS ANDROID
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan,
Agustus 2016
Arif Setiawan
121401051
Universitas Sumatera Utara
iv
PENGHARGAAN
Syukur Alhamdulillah selalu terucap kehadirat Allah SWT dengan rahmat dan hidayah-Nya
penulis dapat menyelesaikan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana
Komputer (S.Kom), pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
Pada pengerjaan skripsi dengan judul Implementasi Algoritma Rabin-Karp Pada
Kamus Jawa – Indonesia Berbasis Android, 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 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.
4. Ibu Dr. Maya Silvi Lydia M.Sc selaku dosen pembimbing akademik sekaligus
sebagai Dosen Pembanding I penulis yang telah banyak memberikan arahan
dan motivasi bagi penulis.
5. Bapak Prof. Dr. Iryanto M.Si selaku Dosen Pembimbing I yang telah
memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam
pengerjaan skripsi ini.
6. Bapak Herriyance S.T.,M.Kom selaku Dosen Pembimbing II yang telah
banyak memberikan arahan, motivasi dan masukan yang sangat berharga
kepada penulis.
7. Bapak Ade Chandra S.T., M.Kom selaku dosen Pembanding II penulis yang
telah memberikan saran kepada penulis
8. Bapak Presiden RI ke-6 , Susilo Bambang Yudho Yono berserta jajaran
Mentri Pendidikan, terimakasih atas program bidikmisi, berkat program
bidikmisi saya bisa menempuh pendidikan sarjana.
Universitas Sumatera Utara
v
9. Keluarga tercinta, adik, ayah, kakak, abang terutama Ibunda Trisnawati yang
selalu mendoakan serta memberikan kasih sayang, semangat, serta dorongan
kepada penulis dan memberi segalanya tanpa pamrih.
10. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan
Teknologi Informasi USU.
11. Teman-teman terdekat yang selalu menghibur, memberi semangat dan
membantu saat penulisan skripsi terkhusus buat Heru terimakasih atas bantuan
dan waktunya, kak Murni, Parlindungan, Johan S dan Putri terimakasih atas
motivasi yang diberikan.
12. Teman-teman kuliah, Stambuk 2012 terkhusus KOM B teman-teman
seperjuangan saat menimba ilmu di S1 Ilmu Komputer.
13. 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,
Agustus 2016
Penulis,
Arif Setiawan
Universitas Sumatera Utara
vi
ABSTRAK
Perkembangan jaman memiliki dampak yang cukup besar terhadap keberadaan suatu bahasa
daerah, bahasa Jawa seiring perkembangan jaman semakin lama semakin sedikit penuturnya
terutama Sumatera Utara. Untuk mengatasi hal itu ada beberapa upaya yang dapat dilakukan,
salah satunya adalah dengan membuat kamus, kamus yang di buat haruslah praktis dan cepat
dalam penggunannya. Kamus yang dimaksud adalah kamus berbasis android. Untuk
membuat kamus berbasis android dapat menggunakan algoritma string matching, salah satu
algoritma string matching adalah algoritma Rabin-Karp, algoritma Rabin-Karp melakukan
pencocokan string berdasarkan nilai hash pada teks dan nilai hash pada pattern. Dari pada
melakukan pemeriksaan terhadap setiap posisi dari teks ketika terjadi pencocokan pola, akan
lebih baik dan efisien melakukan pemeriksaan hanya jika
teks yang sedang diproses
memiliki kemiripan seperti pada pattern. Penelitian ini menghasilkan sebuah aplikasi kamus
berbasis android yang mana bilangan basis yang digunakan untuk membangkitkan nilai hash
sangat mempengaruhi kecepatan pencarian serta kecepatan rata rata yang dihasilkan untuk
mencari kata dengan panjang string berbeda-beda untuk 10 kali percobaan adalah 136.5 ms.
Kata Kunci : Android, Kamus, Rabin-Karp, String Matching,
Universitas Sumatera Utara
vii
Rabin-Karp Algorithm Implementation in Java-Indonesian
Dictionary Based on Android
ABSTRACT
Trend of the era had a considerable impact on the existence of a regional language, the Java
language as the trend time fewer and fewer speakers, especially on North Sumatra. To
overcome this, there are some efforts to be made, one of which is to create a dictionary, a
dictionary that is made to be practical and quick in use. Dictionary in question is a dictionarybased android. To create a dictionary based on Android can use string matching algorithm,
one of the string matching algorithm is the Rabin-Karp algorithm, Rabin-Karp algorithm
perform string matching hash value based on the text and the hash value in the pattern. Rather
than conduct an examination of each position of the text in the event of pattern matching, will
be better and more efficient examination only if the text under the process has similarities to
the pattern. This research resulted in an android-based dictionary application which the base
number is used to generate a hash value searching greatly affect the speed and average speed
generated for the word with a different length of string to 10 times the experiment is 136.5 ms.
Keyword : Android, Dictionary, Rabin-Karp, String Matching
Universitas Sumatera Utara
viii
DAFTAR ISI
Halaman
Persetujuan
ii
Pernyataan
iii
Penghargaan
iv
Abstrak
vi
Abstract
vii
Daftar Isi
viii
Daftar Tabel
xi
Daftar Gambar
xii
Daftar Lampiran
xiv
Bab 1 Pendahuluan
1.1 Latar Belakang
1
1.2 Rumusan Masalah
2
1.3 Tujuan Penelitian
2
1.4 Batasan atau Ruang Lingkup Penelitian
2
1.5 Manfaat Penelitian
3
1.6 Metodologi Penelitian
3
1.7 Sistematika Penulisan
4
Bab 2 Tinjauan Pustaka
2.1 Kamus
5
2.2 String Matching
5
2.2.1 Algoritma Rabin-Karp
5
2.3 Android
11
2.4 Penelitian Yang Relevan
11
Universitas Sumatera Utara
ix
Bab 3 Analisis dan Perancangan
3.1 Analisis Sistem
12
3.1.1 Analisis Masalah
12
3.1.2 Analisis Persyaratan
13
3.1.2.1 Persyaratan Fungsional
13
3.1.2.1 Persyaratan Non-Fungsional
14
3.1.3 Pemodelan
14
3.1.3.1 Use Case Diagram
14
3.1.3.2 Activity Diagram
16
3.1.3.3 Sequence Diagram
17
3.1.3.4 Kamus Data
18
3.1.3.5 Flowchart Gambaran Umum Sistem Kamus
19
3.1.3.6 Flowchart Algoritma Rabin-Karp
20
3.1.3.7 Pseudocode Algoritma Rabin-Karp
22
3.2. Perancangan Sistem
22
3.2.1 Antarmuka Splashscreen
23
3.2.2 Antarmuka Menu Utama
23
3.2.3 Antarmuka Sub Menu
24
3.2.4 Antarmuka Sub Menu Tentang Penulis
25
3.2.5 Antarmuka Sub Menu Tutorial
25
3.2.6 Antarmuka Menu Cari
26
3.2.7 Antarmuka ListView Indo-Jawa
27
3.2.8 Antarmuka ListView Jawa-Indo
28
3.2.9 Antarmuka Info Pencarian
28
3.2.10 Antarmuka Sub Menu Keluar
29
Bab 4 Implementasi dan Pengujian Sistem
4.1 Implementasi
30
4.1.1 Implementasi Algoritma Rabin-Karp
30
4.2 Pengujian Sistem
36
4.2.1 Pengujian pencarian kata menggunakan algoritma
Rabin-Karp
4.3. Tampilan Sistem
4.3.1. Menu Utama
36
40
41
Universitas Sumatera Utara
x
4.3.2. Sub Menu
43
Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan
44
5.2 Saran
45
Daftar Pustaka
46
Universitas Sumatera Utara
xi
DAFTAR TABEL
Halaman
Tabel 2.1. Percobaan 1
7
Tabel 2.2. Percobaan 2
7
Tabel 2.3. Percobaan 3
7
Tabel 2.4. Percobaan 4
7
Tabel 2.5. Percobaan 5
8
Tabel 2.6. Percobaan 6
8
Tabel 2.7. Percobaan 7
8
Tabel 2.8. Percobaan 8
8
Tabel 2.9. Percobaan 9
9
Tabel 2.10. Percobaan 10
9
Tabel 2.11. Percobaan 11
9
Tabel 2.12. Percobaan 12
9
Tabel 2.13. Percobaan 13
9
Tabel 2.14. Percobaan 14
10
Tabel 2.15. Percobaan 15
10
Tabel 2.16. Percobaan 16
10
Tabel 2.17. Percobaan 17
10
Tabel 3.1. Use Case Memilih Fungsi Terjemahan
15
Tabel 3.2. Proses Pencarian Kata
16
Tabel 3.3. Kamus Data
18
Tabel 4.1.Teks Tersedia Didalam Database
33
Tabel 4.2. Nilai Hash Kolom Jawa
34
Tabel 4.3. Nilai Hash Kolom Indonesia
35
Tabel 4.4. Pengujian Pencarian Kata/String
36
Tabel 4.5 Hasil Pengujian Pencarian Kata/String dengan
Algoritma Rabin-Karp
40
Universitas Sumatera Utara
xii
DAFTAR GAMBAR
Halaman
Gambar 3.1. Diagram Ishikawa
13
Gambar 3.2. Use Case Diagram
15
Gambar 3.3. Activity Diagram Pencarian Kata
17
Gambar 3.4. Sequence Diagram Pencarian Kata
18
Gambar 3.5. Flowchart Gambaran Umum Sistem Kamus dengan
Algoritma Rabin-Karp
19
Gambar 3.6. Flowchart Algoritma Rabin-Karp
20
Gambar 3.7. Rancangan Antarmuka Splashscreen
23
Gambar 3.8. Rancangan Antarmuka Menu Utama
23
Gambar 3.9. Rancangan Antarmuka Sub Menu
24
Gambar 3.10. Rancangan Antarmuka Menu Tentang Penulis
25
Gambar 3.11. Rancangan Antarmuka Menu Turorial
25
Gambar 3.12. Rancangan Antarmuka Menu Cari
26
Gambar 3.13. Rancangan Antarmuka ListView Hasil Indo – Jawa
27
Gambar 3.14. Rancangan Antarmuka ListView Hasil Jawa – Indo
28
Gambar 3.15. Rancangan Antarmuka Dialog Informasi Pencarian
28
Gambar 3.16. Rancangan Antarmuka Konfirmasi Keluar
29
Gambar 4.1. Contoh Hasil Pencarian Kata Jawa – Indo
31
Gambar 4.2. Contoh Informasi Hasil Pencarian Kata Jawa – Indo
31
Gambar 4.3. Contoh Hasil Pencarian Kata Indo – Jawa
32
Gambar 4.4. Contoh Informasi Hasil Pencarian Kata Indo – Jawa
32
Gambar 4.5. Hasil Pencarian kata “abot”
36
Gambar 4.6. Informasi Pencarian kata “abot”
36
Gambar 4.7. Hasil Pencarian kata “ba”
37
Gambar 4.8. Informasi Penncarian kata “ba”
37
Gambar 4.9. Hasil Pencarian kata “lelembut”
37
Gambar 4.10. Informasi Pencarian kata “lelembut”
37
Universitas Sumatera Utara
xiii
Gambar 4.11. Hasil Pencarian kata “isor”
37
Gambar 4.12. Informasi Penncarian kata “isor”
37
Gambar 4.13. Hasil Pencarian kata “emboh”
38
Gambar 4.14. Informasi Pencarian kata “emboh”
38
Gambar 4.15. Hasil Pencarian kata “maaf”
38
Gambar 4.16. Informasi Pencarian kata “maaf”
38
Gambar 4.17. Hasil Pencarian kata “merah”
38
Gambar 4.18. Informasi Pencarian kata “merah”
38
Gambar 4.19. Hasil Pencarian kata “pagi”
39
Gambar 4.20. Informasi Pencarian kata “pagi”
39
Gambar 4.21. Hasil Pencarian kata “roh”
39
Gambar 4.22. Informasi Pencarian kata “roh”
39
Gambar 4.23. Hasil Pencarian kata “kebun”
39
Gambar 4.24. Informasi Pencarian kata “kebun”
39
Gambar 4.25. Tampilan Splashscreen
41
Gambar 4.26. Tampilan Menu Utama
41
Gambar 4.27. Tampilan Tab Jawa – Indo
42
Gambar 4.28. Tampilan Tab Indo – Jawa
42
Gambar 4.29. Tampilan Tutorial
42
Gambar 4.30. Tampilan Sub Menu
43
Gambar 4.31. Tampilan Sub Menu Tentang Penulis
43
Gambar 4.32. Tampilan Sub Menu Keluar
43
Universitas Sumatera Utara
xiv
DAFTAR LAMPIRAN
Halaman
Listing Program
A-1
Tabel ASCII
B-1
Curriculum Vitae
C-1
Universitas Sumatera Utara