Received June 1st,2012; Revised June 25th, 2012; Accepted July 10th, 2012
APLIKASI ISTILAH AKUNTANSI SEBAGAI MEDIA
PEMBELAJARAN BERBASIS
ANDROID
MENGGUNAKAN ALGORITMA
REVERSE COLUSSI
Annisyah Januarti *1, Sutardi2, Mutmainnah Muchtar3
*1,2,3
Jurusan Teknik Informatika, Fakultas Teknik, Universitas Halu Oleo, Kendari
e-mail : *[email protected], [email protected], [email protected] Abstrak
Akuntansi adalah proses dari transaksi yang dibuktikan dengan faktur, lalu dari transaksi dibuat jurnal, buku besar, neraca lajur, kemudian akan menghasilkan informasi dalam bentuk laporan keuangan yang digunakan pihak-pihak tertentu. Kamus akuntansi merupakan salah satu media pembelajaran yang sangat dibutuhkan dalam dunia pendidikan. Namun, seringkali ditemukan masalah waktu yang kurang efisien dan ukuran kamus yang biasannya besar dan berat untuk dibawa kemana-mana. Salah satu cara untuk mengatasi masalah ini adalah dengan membuat aplikasi istilah akuntansi berbasis android. Algoritma Reverse Colussi memiliki kinerja pencarian kata dimulai dari akhir
pattern yang disesuaikan dengan sumber teks.
Untuk mempermudah pengguna kamus dalam mencari istilah di bidang akuntansi, maka diperlukan integrasi dari sistem manual ke sistem otomatis dengan mengimplementasikan Algoritma
Reverse Colussi. Algoritma Reverse Colussi memiliki kinerja pencarian kata dimulai dari pattern
yang dicocokkan dengan sumber teks. Jika terjadi ketidakcocokkan pada pattern maka secara langsung akan dilakukan perpindahan posisi pengecekan. Hasil yang diperoleh dari penelitian ini adalah sebuah aplikasi istilah akuntansi berbasis android offline sangat efisien karena rata-rata waktu pencarian paling lambat kurang dari 2 detik, dan tepat dalam melakukan pencarian string, selama istilah yang dicari ada dalam database.
Kata kunci—Android, Algoritma Reverse Colussi.
Abstract
Accounting is a process of transaction proven by invoice, then the transaction made journal, ledger, work sheet, then will produce information in the form of financial statements used by certain parties. Accounting dictionary is one of the learning media that is needed in education. However, it is often found that the problem is less efficient and the size of the dictionary is usually large and heavy to carry anywhere. One way to solve this problem is to create an application based on android accounting terms. Reverse Colussi algorithm has a word search performance starting from the end of the pattern adjusted to the source text.
To facilitate dictionary users in searching for terms in the field of accounting, it is necessary integration of manual systems to automated systems by implementing Reverse Colussi Algorithm. Reverse Colussi algorithm has a search performance of words starting from a pattern that is matched with the source text. If there is a mismatch in the pattern then the transfer position will be done directly. The results obtained from this research is an application of offline android-based accounting terms very efficient because the average search time is slowest less than 2 seconds, and precisely in searching for a string, as long as the search terms are in the database.
Gambar 1 Flowchart Sistem 1. PENDAHULUAN
eknologi saat ini berkembang semakin cepat, tidak terkecuali teknologi informasi dan komunikasi, khususnya pada aplikasi mobile. Handphone yang awalnya hanya sebagai alat komunikasi, kini sudah melebihi fungsi dasarnya. Berbagai macam fitur yang modern telah ditanamkan, misalnya saja pengolah gambar dan video, pengolah dokumen, aplikasi jejaring sosial, aplikasi pendidikan dan lain sebagainya.
Handphone yang memiliki fungsi tersebut di atas dianggap sebagai telepon pintar atau
smartphone. Smartphone pun kini dijalankan dengan sistem operasi layaknya komputer, diantaranya menggunakan sistem operasi
Blackberry, Android, iOS dan Microsoft. Kamus akuntansi merupakan salah satu media pembelajaran yang sangat dibutuhkan dalam dunia pendidikan. Namun, seringkali ditemukan masalah waktu yang kurang efisien dan ukuran kamus yang biasanya besar dan beratuntuk dibawa kemana-mana.Oleh karena itu, diperlukan integrasi dari sistem manual ke sistem otomatis, untuk mempermudah pengguna dalam mencari istilah di bidang akuntansi. Salah satu bentuknya adalah dengan menerapkan aplikasi daftar istilah akuntansi berbasis smartphone android.
Mempersingkat proses penyajian data pada aplikasi ini maka diterapkan pencocokan
string pada pencarian istilahakuntansi yang diinginkan, dalam penelitian ini akan digunakan Algoritma Reverse Colussi.
Algoritma Reverse Colussi ini sendiri berbeda dengan Algoritma Colussi. Algoritma Reverse Colussi merupakan perbaikan dari Algoritma
Boyer-Moore. Sedangkan Algoritma Colussi
merupakan perbaikan dari Algorima Knuth,
Morris, dan Pratt. Berdasarkan jurnal
“Pencocokan String dengan Algoritma
Reverse Colussi”, menyatakan bahwa
Algoritma Reverse Colussi lebih cepat dalam pencarian string [1].
2. METODE PENELITIAN 2.1 Pengertian Akuntansi
Akuntansi adalah proses dari transaksi yang dibuktikan dengan faktur, lalu dari transaksi dibuat jurnal, buku besar, neraca lajur, kemudian akan menghasilkan informasi dalam bentuk laporan keuangan yang
digunakan pihak-pihak tertentu [2].
2.2 Algoritma String Matching
Algoritma string matching dalam bahasa Indonesia dikenal dengan istilah algoritma pencocokkan string. Persoalan pencarian
string dirumuskan sebagai berikut :
1. Sebuah teks (text), yaitu sebuah (long)
string yang panjangnya n karakter.
2. Pattern, yaitu sebuah string dengan
panjang m karakter (m<n) yang akan dicari dalam teks [3].
2.3 Algoritma Reverse Colussi
Algoritma merupakan urutan langkah-langkah untuk menyelesaikan masalah yang disusun secara sistematis. Algoritma Reverse Colussi merupakan satu dari sekian banyak algoritma string matching atau sering disebut pencocokkan string. Algoritma Reverse Colussi merupakan perbaikan dari Algoritma
Boyer – Moore dan idenya berasal dari
Colussi [4].
3. HASIL DAN PEMBAHASAN 3.1 Flowchart Sistem
Gambar 1 menunjukkan flowchart
sistem aplikasi istilah akuntansi.
Flowchart aplikasi istilah akuntansi, dimulai dari user memasukkan kata di pencarian. Kemudian sistem akan mencari dengan menggunakan Algoritma Reverse Colussi dimana kata tersebut berada dalam
Gambar 2 Flowchart Algoritma Reverse Colussi
waktu proses pencocokkan string, sedangkan banyaknya jumlah istilah yang ditemukan nol.
3.2 Flowchart Algoritma Reverse Colussi
Gambar 2 menunjukkan algoritma
reverse colussi aplikasi istilah akuntansi.
Pertama user akan memasukkan kata kunci yang akan dicocokkan. Setelah kata kunci di inputkan langkah selanjutnya adalah mencari nilai rcBc (Reverse Colussi Bad Character) dari sumber teks dan nilai rcGs (Reverse Colussi Good Suffixes) dari pattern
yang ditentukan. Setelah nilai tabel rcBc (Reverse Colussi Bad Character) dan rcGs
(Reverse Colussi Good Suffixes) terisi semua, langkah selanjutnya adalah melakukan pencocokkan yaitu dengan cara membandingkan setiap karakter dari mulai karakter paling kanan.
Apabila pada perbandingan pertama sudah tidak ada kecocokkan, maka nilai perpindahan yang digunakan adalah nilai perpindahan dari tabel rcBc (Reverse Colussi
Bad Character). Tetapi, jika pada
perbandingan pertama ada kecocokkan, maka nilai perpindahan selanjutnya bisa dilihat dari tabel rcGs (Reverse Colussi Good Suffixes). Proses perbandingan dilakukan sampai sisa sumber teks yang belum dibandingkan memiliki jumlah karakter kurang dari jumlah karakter pada pattern, dan proses pencocokkan selesai. Berikut proses pencocokkan kata menggunakan Algoritma Reverse Colussi:
Sumber teks : ACTUAL COST (BIAYA tersebut akan dicari dengan menggunakan beberapa rumus, dengan variabel sebagai berikut.
Inisialisasi :
Y adalah karakter terakhir dari window pada T.
s adalah panjang pergeseran yang akan digunakan pada langkah terakhir.
k bilangan integer yang terdapat pada karakter ditemukan ataupun tidak ditemukan, berikut aturan yang akan menentukan berapa nilai yang akan dimasukan kedalam tabel
Jika tidak ditemukan, masukkan m ke tabel rcBc[Y, s]
Tabel 1 rcBc awal
Langkah pertama mencari nilai pada baris A kolom 1. Maka, Y = A, s = 1, m = 5, pasangan karakter YA.
Pm-k-1 = P5-2-1 = P2 = A
Pm-k-s-1 = P5-2-1-1 = P1 = 1
Pm-s-1 = P5-1-1 = P3 = Y
Karena jika dimasukkan ke dalam aturan yang ada sebelumnya tidak memenuhi syarat untuk kondisi 1 dan kondisi 2, maka baris A kolom 1 diisi dengan menggunakan kondisi 3. Masukkan panjang m pada baris A kolom 1, sehingga akan terlihat seperti Tabel 2.
Tabel 2 rcBc Karakter A,1
Kondisi yang sama juga ditemukan pada baris A kolom 2. Sehingga langsung saja masukkan panjang m ke dalam tabel tersebut. Seperti pada Tabel 3. Langkah selanjutnya, mencari nilai pada baris A kolom 3. Maka,Y = A, s = 3, m = 5, I _ _ _ _ A
Pm-k-1 = P5-2-1 = P2 = A
Pm-k-s-1 = P5-2-3-1 = P-1
Pm-s-1 = P5-3-1 = P1 = I
Karena ditemukan Pm-k-1 = Y dan k>m–s– 1, sesuai dengan kondisi ke 2, sehingga untuk mengisi baris A kolom 3 menggunakan kondisi 2. Masukkan panjang k terkecil pada baris A kolom 3, sehingga akan terlihat seperti Tabel 3.
Tabel 3 rcBc Karakter A,3
Kondisi yang sama juga ditemukan pada baris A kolom 4 dan 5. Sehingga langsung saja masukkan panjang k ke dalam tabel tersebut. Seperti pada Tabel 4. Langkah selanjutnya, mencari nilai pada baris B kolom 1. Maka, Y = B, s = 1, m = 5, pasangan karakter YB
Pm-k-1 = P5-4-1 = P0 = B
Pm-k-s-1 = P5-4-1-1 = P-1
Pm-s-1 = P5-1-1 = P3 = Y
Tabel 4 rcBc Karakter B,1
Kondisi yang sama juga ditemukan pada baris B kolom 2, 3, 4 dan 5. Sehingga langsung saja masukkan panjang k terkecil pada baris B kolom 2, 3, 4 dan 5. sehingga akan terlihat seperti Tabel 5. Langkah selanjutnya, mencari nilai pada baris C kolom 1. Maka,Y = C, s = 1, m = 5, YC
Karena tidak ditemukan nilai k, maka sudah dapat dipastikan tidak memenuhi syarat untuk kondisi 1 dan kondisi 2. Sehingga untuk mengisi baris C kolom 1 menggunakan kondisi 3. Masukkan panjang m pada baris C kolom 1, sehingga akan terlihat seperti Tabel 5.
Tabel 5 rcBc Karakter C,1
Kondisi yang sama juga ditemukan pada baris C, E, G, H, L, N, O, S, T, U, [.], [(], [)]
dan Sp pada semua kolom. Sehingga langsung saja masukkan panjang m kedalam tabel tersebut. Seperti pada Tabel 6. Langkah selanjutnya, mencari nilai pada baris I kolom 1. Maka,Y = I, s = 1, m = 5, YI
Pm-k-1 = P5-3-1 = P1 = I
Pm-k-s-1 = P5-3-1-1 = P0 = B
Pm-s-1 = P5-1-1 = P3 = Y
Karena jika dimasukkan ke dalam aturan yang ada sebelumnya tidak memenuhi syarat untuk kondisi 1 dan kondisi 2, maka baris I kolom 1 diisi dengan menggunakan kondisi 3. Masukkan panjang m pada baris I kolom 1, sehingga akan terlihat seperti Tabel 6.
Tabel 6 rcBc Karakter I,1
Langkah selanjutnya, mencari nilai pada baris I kolom 2. Maka, Y = I, s = 2, m = 5, AI
Pm-k-1 = P5-3-1 = P1 = I
Pm-k-s-1 = P5-3-2-1 = P-1
Pm-s-1 = P5-2-1 = P2 = A
Karena ditemukan Pm-k-1 = Y dan k>m–s
Tabel 7 rcBc Karakter I,1
Kondisi yang sama juga ditemukan pada baris I kolom 3, 4 dan 5. Sehingga langsung saja masukkan panjang k terkecil pada baris I kolom 3, 4 dan 5. Sehingga akan terlihat seperti Tabel 8. Langkah selanjutnya, mencari nilai pada baris Y kolom 1. Maka, Y = Y, s = 1, m = 5, YY
Pm-k-1 = P5-1-1 = P3 = Y
Pm-k-s-1 = P5-1-1-1 = P2 = A
Pm-s-1 = P5-1-1 = P3 = Y
Karena jika dimasukkan ke dalam aturan yang ada sebelumnya tidak memenuhi syarat untuk kondisi 1 dan kondisi 2, maka baris Y kolom 1 diisi dengan menggunakan kondisi 3. Masukkan panjang m pada baris Y kolom 1, sehingga akan terlihat seperti Tabel 8.
Tabel 8 rcBc Karakter Y,1
Kondisi yang sama juga ditemukan pada baris kolom 2 dan 3. Sehingga langsung saja
masukkan panjang m pada baris Y kolom 2 dan 3. Sehingga akan terlihat seperti Tabel 9. Langkah selanjutnya, mencari nilai pada baris Y kolom 4. Maka, Y = A, s = 4, m = 5, B _ _ _ _ Y
Pm-k-1 = P5-1-1 = P3 = Y
Pm-k-s-1 = P5-1-4-1 = P-1
Pm-s-1 = P5-4-1 = P0 = B
Karena ditemukan Pm-k-1 = Y dan k>m–s– 1, sesuai dengan kondisi ke 2, sehingga untuk mengisi baris Y kolom 4 menggunakan kondisi 2. Masukkan panjang k terkecil pada baris Y kolom 4, sehingga akan terlihat seperti Tabel 9.
Tabel 9 rcBc Karakter Y,1
2. Mencari special positions dan non-special positions
Suatu substring bisa dikatakan special position jika ada salah satu atau beberapa karakter yang muncul secara berulang. Menentukan special position berguna untuk mendapatkan nilai hmin pada pattern.
a. Mencari hmin
Nilai hmin digunakan untuk menentukan nilai pada tabel rcGs. Tabel 10 menunjukan tabel awal untuk melakukan pencocokkan nilai
Tabel 10 hmin Awal
Index 0 1 2 3 4
Pattern B I A Y A
Hmin ? ? ? ? ?
Dari pattern pada Tabel 10, karakter A merupakan substring yang sering diulang. Sehingga Y adalah special position. Gambar 3 adalah gambar specialposition dari pattern
tersebut.
Gambar 3 Special Position
Jumlah pergeseran untuk setiap special positions disimpan dalam tabel yang disebut
hmin. Pergeseran tersebut, dihitung dari jarak karakter yang berulang. Special positioni = 3, simpan jumlah pergeseran 1 (5–3–1=1) pada tabel hmin[1] = 3
Gambar 4 Hmin
Selanjutnya isikan nilai indeks terakhir
pattern pada kolom yang kosong , sehingga terlihat pada Tabel 11 hmin akhir adalah hasil akhir dari pencocokkan hmin pada pattern
Nilai rmin digunakan untuk menentukan nilai tabel rcGs berikutnya. Tabel 12 merupakan tabel awal untuk pencocokkan nilai
rmin.
Rmin dapat diisi dengan ketentuan sebagai berikut: Jika suffix S yang terdapat pada sisi dengan prefix tidak terdapat pada pattern
“BIAYA”, maka rmin(i)=m. Dapat dilihat
dibuat,selanjutnya kedua tabel tersebut dapat digunakan untuk membuat tabel rcGs, seperti pada Tebel 14.
Pertama-tama, isi indeks dari special positions yang tidak kosong kedalam table
Tabel 16 rcGs Tahap 3
Setelah proses preprocessing selesai, dengan hasil yang dapat dilihat pada Tabel 9 untuk tabel rcBc dan pada Tabel 17 untuk tabel rcGs, langkah selanjutnnya adalah proses pencocokkan. Proses pencocokkan dengan contoh sumber string seperti berikut.
Sumber teks : ACTUAL COST (BIAYA bahwa karakter akhir pattern yang dicari yaitu karakter A sejajar dengan karakter A pada teks artinya pada percobaan ke-1 terjadi kecocokkan, maka dilakukan pergeseran selanjutnya sejauh dua karakter. Nilai pergeseran dua karakter ini diperoleh dari tabel rcGs[1] dan bernilai 2.
Percobaan ke-2
Shift by5 (rcBc[Sp][s], s = 5), and change s = 5
Dari hasil percobaan ke-2, dapat dilihat bahwa karakter akhir pattern yang dicari yaitu karakter A sejajar dengan karakter Sp pada teks. Artinya, pada percobaan ke-2 terjadi ketidakcocokkan, maka dilakukan pergeseran
selanjutnya sejauh lima karakter. Nilai pergeseran lima karakter ini diperoleh dari bahwa karakter akhir pattern yang dicari yaitu karakter A sejajar dengan karakter Sp pada teks. Artinya, pada percobaan ke-3 terjadi ketidakcocokkan, maka dilakukan pergeseran selanjutnya sejauh lima karakter. Nilai pergeseran lima karakter ini diperoleh dari tabel rcBc Sp,5 dan bernilai 5.
Percobaan ke-4
Shift by5 (rcBc[Y][s], s = 5), and change s = 1
Dari hasil percobaan ke-4, dapat dilihat bahwa karakter akhir pattern yang dicari yaitu karakter A sejajar dengan karakter Y pada teks. Artinya, pada percobaan ke-4 terjadi ketidakcocokkan, maka dilakukan pergeseran selanjutnya sejauh satu karakter. Nilai pergeseran satu karakter ini diperoleh dari tabel rcBc Y,5 dan bernilai 1.
Percobaan ke-5
Shift by5 (rcGs[5]), and change s = 5
Dari hasil percobaan ke-5 dapat dilihat bahwa semua karakter terjadi kecocokkan, maka dilakukan pergeseran selanjutnya sejauh lima karakter. Nilai pergeseran lima karakter ini diperoleh dari tabel rcGs[5] dan bernilai 5.
Percobaan ke-6
Shift by5 (rcBc[U][s], s = 5), and change s = 5
selanjutnya sejauh lima karakter. Nilai pergeseran satu karakter ini diperoleh dari tabel rcBc U,5 dan bernilai 5.
Percobaan ke-7
Shift by5 (rcBc[H][s], s = 5), and change s = 5
Dari hasil percobaan ke-7, dapat dilihat bahwa karakter akhir pattern yang dicari yaitu karakter A sejajar dengan karakter H pada teks. Artinya, pada percobaan ke-7 terjadi ketidakcocokkan, maka dilakukan pergeseran selanjutnya sejauh lima karakter. Nilai pergeseran satu karakter ini diperoleh dari tabel rcBc H,5 dan bernilai 5.
Percobaan ke-8
Shift by5 (rcBc[.][s], s = 5), and change s = 5
Dari hasil percobaan ke-8, dapat dilihat bahwa karakter akhir pattern yang dicari yaitu karakter A sejajar dengan karakter [.] pada teks. Artinya, pada percobaan ke-8 terjadi ketidakcocokkan, maka dilakukan pergeseran selanjutnya sejauh lima karakter. Nilai pergeseran satu karakter ini diperoleh dari tabel rcBc [.],5 dan bernilai 5. Karena karakter [.] pada indeks ke 75 merupakan karakter akhir dari Teks, maka pencocokkan selesai.
Pada tahap pencocokkan dengan Algoritma Reverse Colussi di atas, pencocokkan dilakukan sebanyak 8 percobaan dan ditemukan pada percobaan ke-5. Jumlah indeks pada teks adalah 32, Pattern ditemukan pada indeks ke 13-17.
3.3 Pengujian a. Pengujian Pertama
Pada pengujian ini akan menampilkan hasil pencarian string dengan menggunakan huruf kecil, besar dan kecil besar. Pencarian dilakukan dengan menggunakan smartphone
Xiaomi Redmi Note 4 Android Marsmallow v 6.0. Pada Tabel 18 terlihat hasil pencocokkan
string pada Aplikasi Istilah Akuntansi
menggunakan Algoritma Reverse Colussi.
Pada pengujian pertama dengan pencocokkan string “harga bersih” terlihat bahwa banyaknya komparasi dipengaruhi oleh panjang pattern dengan rata-rata banyak komparasi 9447. Sedangkan waktu proses dipengaruhi oleh penggunaan tolowercase
Pada pengujian pertama dengan pencocokkan string “pendapatan” terlihat bahwa banyaknya komparasi dipengaruhi oleh panjang pattern dengan rata-rata banyak komparasi 12039. Sedangkan waktu proses dipengaruhi oleh penggunaan tolowercase
pada pattern, dimana waktu pencarian dengan menggunakan huruf kecil memiliki rata-rata 756,4 ms, waktu pencarian dengan menggunakan huruf besar memiliki rata-rata 762 ms, dan waktu pencarian dengan menggunakan huruf kecil dan huruf besar memiliki rata-rata 759 ms.
Pada pengujian pertama dengan pencocokkan string “common cost (biaya bersama)” terlihat bahwa banyaknya komparasi dipengaruhi oleh panjang pattern
dengan rata-rata banyak komparasi 4451. Sedangkan waktu proses dipengaruhi oleh penggunaan tolowercase pada pattern, dimana waktu pencarian dengan menggunakan huruf kecil memiliki rata-rata 1953 ms, waktu pencarian dengan menggunakan huruf besar memiliki rata-rata 1963 ms, dan waktu pencarian dengan menggunakan huruf kecil dan huruf besar memiliki rata-rata 1955 ms.
b. Pengujian Kedua
Pada pengujian ini akan menampilkan hasil pencarian string dengan masukkan
Gambar 6 Form menu Utama
Pada tabel di atas terlihat beberapa pencarian pattern dengan kata yang salah,
dengan hasil tidak ada string yang ditemukan. Karena Algoritma Reverse Colussi melakukan pencarian istilahdengan mencocokkan pattern
dengan setiap karakter pada string. Rata-rata waktu pencarian untuk pattern “biata” adalah 404,6 ms, rata-rata waktu pencarian untuk
pattern “los)” adalah 304,4 ms dan rata-rata waktu pencarian untuk pattern “utank” adalah 375,2 ms
3.4 Interface Aplikasi
Adapun tampilan interface dari aplikasi istilah akuntansi sebagai media pembelajaran berbasis android dengan menggunakan Algoritma Reverse Colussi sebagai berikut :
a. Tampilan Menu Utama
merupakan antarmuka awal saat aplikasi dijalankan setelah spalshscrean. Pada menu
home terdapat tiga pilihan menu yaitu menu favorit, daftar istilah dan about.. Form menu Utama ditunjukkan oleh Gambar 6.
4. KESIMPULAN
Kesimpulan dari penelitian ini yaitu : 1. Algoritma Reverse Colussi berhasil
diimplemetasikan pada Aplikasi Istilah Akuntansi berbasis Android. Algoritma
Reverse Colussi sangat efisien karena rata-rata waktu pencarian paling lambat kurang dari 2 detik, dan tepat dalam melakukan pencarian string, selama istilah yang dicari ada dalam database.
2. Besar perbandingan karakter (komparasi) dalam Algoritma Reverse Colussi
dipengaruhi oleh panjang pattern, semakin panjang pattern yang dicari maka banyak komparasi akan semakin kecil dan begitupun sebaliknya. Sedangkan waktu proses pencocokkan string dipengaruhi oleh besar kecilnya huruf inputan pattern. Adapun pattern tidak ditemukan apabila
string tidak sesuai dengan data dalam
database.
5. SARAN
Saran untuk penelitian selanjutnya yaitu :
1. Pada pencarian istilah diaplikasi ini walapun pattern yang di inputkan salah atau typo sistem tetap menampilan istilah yang mendekati dengan pattern yang di
inputkan.
2. Dibuat lebih spesifik dimana ada contoh penerapan pada setiap istilah akuntansi. 3. Jangkauan pencarian tidak hanya pada
DAFTAR PUSTAKA
[1] Didik Haryadi. 2010. Pencocokkan String
Dengan Algoritma Reverse Colussi. http://informatika.stei.itb.ac.id/~rinaldi.m unir/Stmik/2010/2011/Makalah2010/Mak alahStima2010-034.pdf.
[2] Sujarweni V. Wiratna, 2016. Pengantar Akuntansi, terbitan Pustaka Baru Press.
[3] Munir, Rinaldi, 2007. Diktat Kuliah IF2251 Strategi Algoritmik. Institut Teknologi Bandung. 2007.
[4] Admizan, R, P, (2014). Perbandingan Algoritma Reverse Colussi dengan Algoritma Karp-Rabin dalam Mencari dan Mencocokkan String pada Word Game. Undergraduate Theses from JBPTUNIKOMPP.