Implementasi Algoritma Pencocokan String Knuth-Morrispratt Dalam Pembuatan Kamus Kedokteran Pada Platform Android

IMPLEMENTASI ALGORITMA PENCOCOKAN STRING KNUTH-MORRISPRATT DALAM PEMBUATAN KAMUS KEDOKTERAN
PADA PLATFORM ANDROID

SKRIPSI

ARIEF TRY HIDAYAT
101401080

PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2015

Universitas Sumatera Utara

IMPLEMENTASI ALGORITMA PENCOCOKAN STRING KNUTH-MORRISPRATT DALAM PEMBUATAN KAMUS KEDOKTERAN
PADA PLATFORM ANDROID

SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar

Sarjana Komputer

ARIEF TRY HIDAYAT
101401080

PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2015

Universitas Sumatera Utara

ii

PERSETUJUAN

Judul

Kategori

Nama
Nomor Induk Mahasiswa
Program Studi
Departemen
Fakultas

: IMPLEMENTASI ALGORITMA PENCOCOKAN
STRING
KNUTH-MORRIS-PRATT
DALAM
PEMBUATAN KAMUS KEDOKTERAN PADA
PLATFORM ANDROID.
: SKRIPSI
: ARIEF TRY HIDAYAT
: 101401080
: SARJANA (S1) ILMU KOMPUTER
: ILMU KOMPUTER
: ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
Diluluskan di

Medan,

2015

Komisi Pembimbing :
Pembimbing 2

Pembimbing 1

Maya Silvi Lydia, B.Sc, M.Sc.

Dr. Poltak Sihombing, M.Kom

NIP. 197401272002122001

NIP. 196203171991031001

Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,


Dr. Poltak Sihombing, M.Kom
NIP. 196203171991031001

Universitas Sumatera Utara

iii

PERNYATAAN

IMPLEMENTASI ALGORITMA PENCOCOKAN STRING KNUTHMORRIS-PRATT DALAM PEMBUATAN KAMUS
KEDOKTERAN PADA PLATFORM ANDROID

SKRIPSI

Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan,


2015

Arief Try Hidayat
101401080

Universitas Sumatera Utara

iv

PENGHARGAAN

Alhamdulillahirrabbil’alamin. Puji dan syukur penulis ucapkan atas kehadirat Allah
SWT yang telah memberikan limpahan rahmat dan karunia-Nya sehingga penulis
dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana
Komputer, Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi
Informasi Universitas Sumatera Utara. Shalawat beriring salam penulis juga
persembahkan kepada Nabi Besar Muhammad SAW.
Dengan segala kerendahan hati, pada kesempatan ini penulis menyampaikan
terima kasih kepada semua pihak yang telah membantu penyelesaian skripsi dengan
judul Implementasi Algoritma Pencocokan String Knuth-Morris-Pratt dalam

Pembuatan Kamus Kedokteran pada Platform Android. Penulis mengucapkan terima
kasih kepada:
1. Bapak Prof. Subhilhar, Ph.D sebagai PJ Rektor Universitas Sumatera Utara
(USU).
2. Bapak Prof. Dr. Muhammad Zarlis sebagai Dekan Fakultas Ilmu Komputer
dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S1 Ilmu
Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas
Sumatera Utara dan Dosen Pembimbing I yang telah memberikan arahan dan
motivasi kepada penulis dalam pengerjaan skripsi ini.
4. Ibu Maya Silvi Lydia, BSc. MSc sebagai Sekretaris Program Studi S1 Ilmu
Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas
Sumatera Utara dan Dosen Pembimbing II yang telah memberikan arahan dan
motivasi kepada penulis dalam pengerjaan skripsi ini.
5. Ibu Dian Rachmawati, S.Si, M.Kom dan Bapak M. Andri Budiman, S.T.,
M.Comp.Sc., M.E.M. selaku Dosen penguji yang telah memberikan saran dan
kritik kepada penulis dalam penyempurnaan skripsi ini.
6. Seluruh Dosen serta staf Pegawai di Program Studi S1 Ilmu Komputer
Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
7. Kedua Orangtua penulis tercinta Ibunda Elva dan Ayahanda Bariza Bachtiar,

Abang dan Kakak tercinta Veroza Satria Utama, Azizah, Rendy Mardhika, dan
Habibul Ummi yang telah memberikan do’a, dukungan, perhatian, kesabaran
serta kasih sayang yang tulus serta pengorbanan yang tidak ternilai harganya.
8. Rental House Family yang selama ini telah menjadi keluarga kedua penulis
selama mengikuti perkuliahan, tempat berbagi suka dan duka dalam
pengerjaan skripsi ini, kepada Ali Huseini Siambaton, Andri Agasi, Azhar
Fadhilah, S.Kom, Dani Rizki S.Kom, Fadly Herdika, Gunalan Anggirasa,

Universitas Sumatera Utara

v

S.Kom, Ivan Grace Halim, Mego Suntoro, S.Kom, M. Pristian, M. Khairil,
Sobirin, S.Kom, Suhaili Hamdi, Safriatullah, S.Kom, Yohanes Armando
Silitonga, S.Kom.
9. Teman- teman kuliah, khususnya Muhammad Reza Nasution, S.Kom, Ahmad
Rasyidi, S.Kom, Wahyu Eko Putra, Dwi Rizki Ananda, S.Kom, Edo Affan
serta Stambuk 2010 yang tidak dapat disebut satu-persatu, yang telah banyak
membantu dalam pengerjaan skripsi ini.
10. Rekan-rekan pengurus IMILKOM (Ikatan Mahasiswa S1 Ilmu Komputer)

Fasilkom-TI 2013-2014 yang telah memberikan banyak dukungan, tempat
belajar berorganisasi yang benar, dan mendapatkan pengalaman yang tak
ternilai.
11. Ade Mutiara Kartika Dewi Nasution yang selalu memberikan do’a, dukungan
moral, semangat, perhatian yang tak ternilai kepada penulis dalam pengerjaan
skripsi ini.
12. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat
penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini.
Sekali lagi penulis mengucapkan terima kasih kepada semua pihak yang
membantu dalam penyelesaian skripsi ini yang tidak dapat disebutkan satu persatu,
terima kasih atas ide, saran dan motivasi yang diberikan. Semoga Allah SWT
memberikan limpahan karunia kepada semua pihak yang telah memberikan bantuan,
perhatian, kasih sayang serta dukungan kepada penulis dalam menyelesaikan skripsi
ini.
Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan karena
kesempurnaan hanyalah milik Allah SWT semata. Oleh karena itu penulis menerima
kritik dan saran dari semua pihak yang bersifat membangun dan menyempurnakan
skripsi ini. Penulis berharap semoga skripsi ini bermanfaat bagi penulis sendiri pada
khususnya dan pembaca pada umumnya.


Medan, September 2015
Penulis,

Arief Try Hidayat

Universitas Sumatera Utara

vi

ABSTRAK

Kebutuhan masyarakat terhadap layanan teknologi semakin bervariasi. Media
penyimpanan serta media pencarian terhadap suatu kamus yang cepat dan efisien
menjadi salah satu kebutuhan tersebut. Namun disamping itu jarang ditemukan
aplikasi mobile yang dapat memenuhi kebutuhan tersebut. Untuk itu dibuatlah sebuah
aplikasi kamus kedokteran yang menerapkan algoritma Knuth-Morris-Pratt sebagai
masalah pencariannya dan database SQLite sebagai penyimpanan data. Algoritma
Knuth-Morris-Pratt menerapkan informasi pencarian yang disimpan untuk melakukan
pergeseran yang lebih jauh, tidak hanya satu karakter agar dapat melakukan pencarian
yang lebih cepat. Field yang digunakan dalam pencarian ini adalah istilah penyakit,

dengan memasukkan nama istilah penyakit sebagai inputannya dalam pencarian,
kemudian akan didapatkan hasil pencarian berupa arti dari istilah tersebut. Hasil dari
aplikasi ini menampilkan keseluruhan pattern yang cocok dengan teks, dengan
kecepatan pencarian 0,06 detik.

KataKunci : Algoritma Knuth-Morris-Pratt, Kamus Kedokteran

Universitas Sumatera Utara

vii
THE IMPLEMENTATION OF KNUTH-MORRIS-PRATT STRING
MATCHING TO MAKE MEDICAL DICTIONARY IN
ANDROID PLATFORM

ABSTRACT

The needs for technology services more varied. The storage media and search media
for a fast and efficient dictionary is the one those needs. However, is rarely found a
mobile application that can comply those needs. Therefore, it made a medical
dictionary application which applying Knuth-Morris-Pratt algorithm as a matter of

search, and SQLite database as a data storage. Knuth-Morris-Pratt algorithm apply
search information which stored to do a further shift, not just one character in order to
do a faster search. The fields that are used in this quest is a term of the disease by
inserting it as an input in search, then get the results in the form of the meaning from
the term disease. The result of this application show the whole patterns that arematch
with text, with the speed of searching is 0.06 seconds for one character.

Keyword : Knuth-Morris-Pratt algorithm, Medical Dictionary

Universitas Sumatera Utara

viii
DAFTAR ISI

Halaman

Persetujuan
Pernyataan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar

ii
iii
iv
vi
vii
viii
x
xi

Bab 1 Pendahuluan
1.1 Latar Belakang
1.2 Rumusan Masalah
1.3 Batasan Masalah
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Metodologi Penelitian
1.7 Sistematika Penulisan

1
2
2
3
3
3
4

Bab 2 Landasan Teori
2.1 Information Retrieval System
2.1.1 Pengertian Information Retrieval System
2.2 Pencocokan String (String Matching)
2.2.1 Pengertian Pencocokan String
2.2.2 Kerangka Kerja Pencocokan String
2.2.3 Kerangka Pikir Pencocokan String
2.2.4 Macam Algoritma Pencocokan String
2.3 Algoritma Knuth-Morris-Pratt
2.3.1 Fungsi Pinggiran Pada Algoritma
Knuth-Morris-Pratt
2.3.2 Pencarian Dengan Algoritma Knuth-Morris-Pratt
2.3.3 Kompleksitas Waktu Algoritma
Knuth-Morris-Pratt
2.3.4 Kelebihan Algoritma Knuth-Morris-Pratt
2.4 Eclipse
Bab 3 Analisis dan Perancangan Sistem
3.1 Analisis Sistem
3.1.1 Analisis Masalah
3.1.2 Analisis Kebutuhan Sistem
3.1.2.1 Kebutuhan Fungsional Sistem
3.1.2.2 Kebutuhan Non Fungsional Sistem
3.1.3 Pemodelan
3.1.3.1 Use Case Diagram

5
5
7
7
7
8
10
11
12
12
15
15
16

18
18
20
20
20
20
21

Universitas Sumatera Utara

ix
3.1.3.2 Activity Diagram
3.1.3.3 Sequence Diagram
3.1.3.4 Flowchart Sistem
3.2 Perancangan Sistem
3.2.1 Antarmuka Menu Utama
3.2.2 Antarmuka Menu Kosa Kata
3.2.3 Antarmuka Menu Tentang
3.2.4 Antarmuka Menu Navigation

23
24
24
26
26
27
28
28

Bab 4 Implementasi dan Pengujian Sistem
4.1 Implementasi
4.1.1 Implementasi Algoritma Knuth-Morris-Pratt
4.2 Antarmuka Sistem
4.2.1 Tampilan Menu Utama
4.2.2 Tampilan Menu Kosa Kata
4.2.3 Tampilan Menu Tentang
4.2.4 Tampilan Menu Navigation
4.3 Pengujian Sistem
4.3.1 Pengujian Pencarian data istilah dengan Algoritma
Knuth-Morris-Pratt
4.3.2 Pengujian Waktu Pencarian data istilah dengan
Algoritma Knuth-Morris-Pratt
4.3.3 Pengujian Proses Tambah Data
4.3.4 Pengujian Proses Edit Data
4.3.5 Pengujian Proses Delete Data

30
30
33
33
34
34
35
36
36
39
41
41
42

Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan
5.2 Saran

44
44

Daftar Pustaka
Listing Program
Curriculum Vitae

46
A-1
B-1

Universitas Sumatera Utara

x

DAFTAR TABEL

Nomor
Tabel
2.1
2.2
2.3
2.4
3.1
3.2
3.3
4.1
4.2

Nama Tabel

Halaman

Pencarian Kata Menggunakan Algoritma Knuth-Morris-Pratt
Pencarian Kata Menggunakan Algoritma Boyer-Moore
Pencarian Kata Menggunakan Algoritma Colossi
Fungsi Pinggiran
Use Case Pencarian Istilah Kata
Use Case Proses Menginputkan Istilah Kata yang Dicari
Use Case Proses Tampil Hasil Pencarian
Hasil Pencarian Data Istilah Dengan Algoritma Knuth-MorrisPratt
Hasil Waktu Pencarian Data Istilah Dengan Algoritma KnuthMorris-Pratt

8
8
9
12
22
22
22
36
39

Universitas Sumatera Utara

xi

DAFTAR GAMBAR

Nomor
Gambar
2.1
2.2
2.3
2.4
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9

Nama Gambar
Iterasi metode Knuth-Morris-Pratt Pertama
Iterasi metode Knuth-Morris-Pratt Kedua
Iterasi metode Knuth-Morris-Pratt Ketiga
Iterasi metode Knuth-Morris-Pratt Keempat
Diagram Ishikawa untuk Analisis Masalah Sistem
Use Case Diagram Sistem
Activity Diagram
Sequence Diagram
Flowchart Algoritma Knuth-Morris-Pratt
Rancangan Antarmuka Menu Utama
Rancangan Antarmuka Menu Kosa Kata
Rancangan Antarmuka Menu Tentang
Rancangan Antarmuka Menu Navigation
Contoh Pencarian
Pencarian Kata
Tampilan Menu Utama
Tampilan Menu Kosa Kata
Tampilan Menu Tentang
Tampilan Menu Navigation
Menambah Data
Mengubah Data
Menghapus Data

Halaman
13
13
14
14
19
21
23
24
25
26
27
28
29
31
32
33
34
35
36
41
42
43

Universitas Sumatera Utara