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