BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Bab ini membahas data yang digunakan dan mengimplementasikan algortima pattern matching pada pencarian sinonim kata dalam dokumen.
3.1 Data yang digunakan
Data yang digunakan merujuk Kamus Besar Bahasa Indonesia KBBI yang berisi kumpulan kata-kata lengkap bahasa Indonesia dan makna persamaan kata merujuk
kepada Thesaurus bahasa Indonesia.
3.2 Arsitektur Umum
Tahapan awal sistem dimulai dengan proses input yang berisi kata-kata yang ingin dicari oleh user. Sistem melakukan pengecekan tiap kata dan melakukan penghapusan
kata yang tidak penting atau tepat untuk pencarian kata selanjutnya. Kemudian sistem akan memulai tahapan parsing yang diawali dengan stemming kata, pemisahan struktur
kata antara imbuhan dengan kata dasarnya. Pada saat proses stemming berlangsung, sistem mencocokkan inputan user terhadap kata dasar yang sudah disimpan di database;
penambahan persamaan kata yang relevan dengan makna kata tersebut baik kata tunggal maupun frasa untuk pencarian selanjutnya; pencarian kata atau sinonim kata yang sesuai
dengan dokumen yang ada di database. Hasil berupa nama dan isi dari dokumen yang sesuai dengan sinonim kata yang ingin dicari oleh pengguna.
Adapun arsitektur umum yang menggambarkan tahapan yang digunakan dalam penelitian ini dapat dilihat pada gambar 3.1.
Universitas Sumatera Utara
Input teks - Memulai Porter Stemming
- Penghilangan Stopwords - Pencocokan sinonim kata
Membandingkan kecocokan teks pada dokumen di sisi kiri dan kanan
Menampikan keluaran kata dan persamaan kata yang cocok dengan isi
dokumen
Database kamus
Database dokumen
Menentukan nilai geser sisi kiri shiftl dan sisi kanan shiftr
Two Sliding Windows Berry-Ravindran
Gambar 3.1 Arsitektur Umum Sistem
3.3 Analisis Data
Perincian proses pada gambar 3.1 dijelaskan dengan tahapan sebagai berikut : 1.
User mengetikan input kalimat : Perangainya yang degil membuat orang segan untuk berteman dengannya
. Kalimat tersebut di-parsing menjadi [Perangainya] [yang] [degil] [membuat]
[orang] [segan] [untuk] [berteman] [dengannya].
2. Proses Stopwords
Kata-kata yang telah dibagi menjadi kumpulan array, yakni arr_kata, program akan memulai proses penghilangan kata-kata yang tidak relevan atau tidak tepat
terutama tanda baca dan kata penghubung stopwords. Program melakukan pendeteksian kata per kata berdasarkan stopword yang ada di database. Kemudian
kata-kata tersebut dihapus berdasarkan kamus kata yang berisi kata- kata “tidak
relevan” stopwords . Penghapusan kata tidak relevan dengan kalimat masukan menjadi :
Universitas Sumatera Utara
[Perangainya][degil][orang][segan][berteman] Kata yang dihapus antara lain, :
[yang][membuat][untuk] [dengannya] Proses penghapusan stopwords dapat dilihat pada Gambar 3.2.
Gambar 3.2 Proses stopwords
3. Proses Stemming
Setelah selesai proses stopword, maka dilanjutkan proses stemming menggunakan algoritma Porter. Pada penelitian ini, algoritma Porter dimodifikasi agar sesuai
dengan imbuhan Bahasa Indonesia Tala, 2003. Aturan ditambahkan untuk memberikan hasil yang maksimal dan mempermudah proses stemming. Berikut
adalah aturan yang ditambahkan dalam algoritma Porter. 1.
Kata dasar yang dilekati partikel infleksional yang tidak mempunyai imbuhan apapun. Contoh : masalah.
2. Kata dasar yang dilekati partikel berprefiks yang tidak mempunyai imbuhan
apapun. Contoh : menikah. 3.
Kata dasar yang dilekati kata ganti milik yang tidak mempunyai imbuhan apapun. Contoh : bangku.
4. Kata dasar yang dilekati kata ganti milik berprefiks yang tidak mempunyai imbuhan
apapun. Contoh : bersuku. 5.
Kata dasar yang dilekati prefix pertama yang tidak mempunyai imbuhan apapun. Contoh : median.
Mulai Hapus tanda baca;
Explode textfile, “spasi” ; For i=1 to jumlah kata
For j =1 to jumlah stopwords If teks[i] == stopword[j]
{ Hapus teks[i]; } End for
End for Implode teks,”spasi”;
Akhir
Universitas Sumatera Utara
6. Kata dasar yang dilekati prefix pertama bersufiks yang berarti kata dasar yang
memiliki suku kata pertama awalan dan mempunyai akhiran. Contoh : terapan. 7.
Kata dasar yang dilekati prefiks kedua yang tidak mempunyai imbuhan apapun . Contoh : percaya.
8. Kata dasar yang dilekati prefiks kedua bersufiks yang berarti kata dasar yang
memiliki suku pertama awalan kedua dan mempunyai akhiran. Contoh: perasaan. 9.
Kata dasar yang dilekati sufiks yang tidak mempunyai imbuhan apapun. Contoh: pantai.
Keseluruhan proses stemming menggunakan algoritma Porter dapat dilihat pada gambar 3.3.
Gambar 3.3 Algoritma Porter dalam proses stemming
Algoritma Porter dimulai dengan langkah-langkah antara lain : 1.
Kata yang distemming mula-mula dicari di kamus data, jika ada kata dasar yang sesuai, maka algoritma berhenti, jika tidak ada, maka lanjutkan ke langkah 2.
2. Cek aturan tambahan yang bukan merupakan imbuhan Bahasa Indonesia, jika ada
yang sesuai, maka algoritma berhenti. Jika tidak ada, maka lanjutkan ke langkah 3. 3.
Hilangkan partikel “-lah”, “-kah”,” –tah”,” –pun”.
Mulai Cek kata dasar;
If kata = kata dasar then return kata;
Else If kata mengandung partikel then
Hapus partikel; If kata mengandung kata ganti milik then
Hapus kata ganti milik; If kata mengandung kata awalan pertama then
Hapus kata awalan pertama; If kata mengandung kata awalan kedua then
Hapus kata awalan kedua; If kata mengandung akhiran then
Hapus akhiran;
Akhir
Universitas Sumatera Utara
4. Hilangkan kata ganti kepemilikan “-ku”, “-mu”, “-nya” .
5. Hilangkan awalan pertama “meng-“, “meny-“, “men-“, “mem-“, “me-“, “peng-“,
“peny-“, “pen-“, “pem-“, “di-“, “ter-“, “ke-“ . Jika tidak terdapat awalan pertama
pada kata, maka lanjutkan ke langkah 7. Jika ada, maka lanjutkan ke langkah 6. 6.
Hilangkan awalan kedua “ber-“, “bel-“, “be-“, “per-“, “pel-“, “pe-“ . Algoritma
akan berhenti jika sebelumnya sudah melalui langkah 7 dan masih tidak menemukan adanya awalan kedua pada kata. Algoritma akan menggangap kata yang
dimasukkan sebagai kata dasar. 7.
Hilangkan akhiran “-kan”, “-an”, “-i” . Jika tidak terdapat akhiran pada kata, maka
lanjutkan ke langkah 6.
Berdasarkan kata yang telah dihapus melalui proses stopwords, maka sistem memulai
stemming menggunakan algoritma Porter untuk bahasa Indonesia. Proses yang terjadi
sebagai berikut :
[perangainya] di-stemming, kamus kata tidak mendapati adanya kata dasar yang cocok dengan kata [perangainya] ,maka akan melalui tahapan berikut :
1. Hapus partikel -lah, -kah, -tah, -pun , tidak ada kecocokan partikel dengan
kata [perangainya], maka dilanjutkan ke langkah 2. 2.
Hapus kata ganti kepunyaan-ku, -mu, -nya, ada kecocokan kata ganti
kepunyaan dengan kata [perangainya], maka dihapus menjadi [perangai].
3. Hapus awalan pertama First Order Derivational Prefix meng-, meny-,
men-, me-, peng- ,dll , tidak ada kecocokan awalan pertama dengan kata [perangai], maka dilanjutkan ke langkah 4.
4. Hapus akhiran Derivation Suffix -kan, -an, -i , tidak ada kecocokan
akhiran dengan kata [perangai], maka [perangai] sudah menjadi kata dasar.
[degil] di-stemming, maka kata [degil] akan dikembalikan menjadi kata dasar.
[orang] di-stemming, maka kata [orang] akan dikembalikan menjadi kata dasar.
[segan] di-stemming, maka kata [segan] akan dikembalikan menjadi kata
dasar.
Universitas Sumatera Utara
[berteman] di-stemming, kamus kata tidak mendapati adanya kata dasar yang
cocok dengan kata [berteman] ,maka akan melalui tahapan berikut : 1.
Hapus partikel -lah, -kah, -tah, -pun , tidak ada kecocokan partikel dengan kata [berteman], maka dilanjutkan ke langkah 2.
2. Hapus kata ganti kepunyaan-ku, -mu, -nya, tidak ada kecocokan kata
ganti kepunyaan dengan kata [berteman], maka dilanjutkan ke langkah 3.
3. Hapus awalan pertama First Order Derivational Prefix meng-,
meny-, men-, me-, peng- ,dll , tidak ada kecocokan awalan pertama dengan kata [berteman], maka dilanjutkan ke langkah 4.
4. Hapus awalan kedua Second Order Derivational Prefix ber-, bel-,
be-, per-, pel-, pe- , pemenggalan awalan “ber-“ sesuai dengan
[berteman], maka dihapus menjadi [teman].
5. Hapus akhiran Derivation Suffix -kan, -an, -i , , tidak ada kecocokan
akhiran dengan kata [teman], maka [teman] sudah menjadi kata dasar.
4. Pencocokan Kata dan Sinonim Kata Menurut Murad,et al2007, pencarian relevansi kata yang satu dengan kata yang lain
tidak memerlukan pencarian sinonim kata karena pencarian dilakukan dengan kemiripan kata yang diubah ke dalam fuzzy set. Pada penelitian ini, pencocokan
langsung ditentukan berdasarkan makna kata nya itu sendiri. Kata yang telah di-stem dilanjutkan dengan mencari persamaan kata sinonim yang ada di dalam kamus
sinonim kata. Tiap arr_kata[] kata hasil stemming dilakukan scanning dan hasil pencocokan persamaan kata akan dimuat ke dalam array baru,yaitu arr_Snmkata[].
Apabila hasil pencocokan terdapat lebih dari satu makna kata, maka program tetap akan memuat sinonim kata tersebut ke dalam arr_Snmkata[].
Kumpulan kata dasar [perangai][degil][orang][segan][teman] akan dicari persamaan kata pada kamus data yang memiliki makna serupa.
[perangai] memiliki persamaan makna kata dengan [perilaku], maka dibentuk
arr_Snmkata[i] = [perilaku].
Universitas Sumatera Utara
Fase Pre-processing Fase Pencarian
Algoritma Two Sliding Windows Algoritma Berry-Ravindran
[degil] memiliki persamaan makna kata dengan [keras kepala], maka dibentuk
arr_Snmkata[i+1] = [keras kepala].
[orang] memiliki persamaan makna kata dengan [manusia], maka dibentuk arr_Snmkata[i+2] = [manusia].
[segan] memiliki persamaan makna kata dengan [sungkan] dan [malu], maka
dibentuk arr_Snmkata[i+3] = [sungkan] dan arr_Snmkata[i+4] = [malu].
[teman] memiliki persamaan makna kata dengan [sahabat] dan [rekan], maka dibentuk arr_Snmkata[i+5] = [sahabat] dan arr_Snmkata[i+6] = [rekan].
5. Pencarian teks
Pada tahapan pencarian teks digunakan Algoritma Two Sliding Windows TSW yang mencakupi dua proses utama yaitu fase pre-processing dan fase pencarian. Pada
dasarnya, algoritma TSW melakukan pencarian dari dua sisi windows yaitu sisi kiri left window dan sisi kanan right window secara parallel Hudaib et al, 2008 .
Fase pre-processing menggunakan algoritma Berry-Ravindran untuk menentukan nilai shift yang akan digunakan pada saat fase pencarian. Proses keseluruhan pencarian
teks dapat dilihat pada gambar 3.4.
Gambar 3.4 Proses pencarian teks
Pengecekan bagian kiri dan kanan teks
START
Kata dan sinonim kata
Get shiftl ; Get shiftr ;
END Menentukan karakter a
dan b
Database dokumen
Ada di database dokumen ?
Ya Tidak
Universitas Sumatera Utara
a b
Fase Pre-Processing
Fase pre-processing menggunakan dua array yaitu nextl dan nextr. Nilai dari kedua array tersebut ditentukan oleh algoritma bad character Berry Ravindran BR.
Nilai dari kedua array tersebut akan dimasukkan ke dalam masing-masing variable shiftl dan shiftr. Kata-kata dasar [perangai] [degil] [orang] [segan] [teman] dan
persamaan kata [perilaku] [keras kepala] [manusia] [sungkan] [malu] [sahabat][rekan] melalui proses penentuan nilai kedua shift sebagai berikut :
Variabel shiftl Langkah
– langkah pencarian nilai shiftl dijelaskan sebagai berikut : 1.
Apabila pencarian dimulai pertama kalinya, maka nilai variabel shiftl adalah 0. Jika tidak, maka nilai awal shiftl = m+2 dimana m merupakan jumlah pola
pattern yang ingin dicari. 2.
Penetapan nilai a dan b yang merupakan dua karakter berurutan di hitung setelah posisi pola, antara lain :
Dimana, P = Pattern ; m = banyak pola yang dicari ; n = nilai tengah dari banyak pola yang dicari.
Pada contoh sebelumnya, berarti :
Kata “perangai” memiliki nilai a = “k” ; b = “a” Kata
“degil” memiliki nilai a = “s” ; b = “a” Kata “orang” memiliki nilai a = “s” ; b = “a”
Kata “segan” memiliki nilai a = “s” ; b = “a” Kata “teman” memiliki nilai a = “s” ; b = “a”
Proses penetapan nilai a dan b dapat dilihat pada gambar 3.5.
p e
r a
n g
a i
b e
r d
a s
a r
k a
n a
n ...
d e
g i
l b
e r
d a
s a
r k
a n
a n
...
a = P[m+1] b = P[m+2]
Pattern Text
Pattern Text
Universitas Sumatera Utara
shiftl a, b = � { − � +
+ � [ − ] =
� [�][� + ] = � [ ] =
ℎ �� }
o r
a n
g b
e r
d a
s a
r k
a n
a n
... s
e g
a n
b e
r d
a s
a r
k a
n a
n ...
t e
m a
n b
e r
d a
s a
r k
a n
a n
...
Gambar 3.5 Ilustrasi posisi penentuan letak pada bagian kiri teks
3. Lakukan loop yang dimulai dari awal sampai akhir karakter yang sebanyak m-
2. 4.
Pada saat terjadi looping, algoritma menghitung nilai array nextl yang akan dimasukkan kedalam variabel shiftl. Apabila hasil array nextl lebih dari satu
nilai, maka algoritma memilih nilai terkecil dari hasil tersebut. Proses perhitungan nilai shiftl dapat dilihat pada gambar 3.5.
Gambar 3.6 Aturan Operasi Hitung Nilai shift kiri
Berdasarkan contoh sebelumnya, maka : nilai shiftla,b pada kata “perangai” = “k”,”a” = m + 2 = 8 + 2 = 10.
nilai shiftla,b pada kata “degil” = “s”,”a” = m + 2 = 5 + 2 = 7.
nilai shiftla,b pada kata “orang” = “s”,”a” = m + 2 = 5 + 2 = 7.
nilai shiftla,b pada kata “segan” = “s”,”a” = m + 2 = 5 + 2 = 7. nilai shiftla,b pada kata “teman“ = “s”,”a” = m + 2 = 5 + 2 = 7.
Hal ini berarti bahwa algoritma melakukan pengg eseran pada kata “perangai”
sebanyak 7 langkah ke kanan dan kata “degil”, “orang”, “segan”, “teman” sebanyak 7 langkah ke kanan. Penentuan nilai shiftl selanjutnya ditentukan oleh dua karakter
berurutan a,b pada teks. Pattern
Text Pattern
Text Pattern
Text
Universitas Sumatera Utara
a b
Variabel shiftr Langkah
– langkah penentuan nilai shiftr dijelaskan sebagai berikut : 1.
Apabila pencarian dimulai pertama kalinya, maka nilai variabel shiftl adalah 0. Jika tidak, maka nilai awal shiftl = m+2 dimana m merupakan jumlah pola
pattern yang ingin dicari. 2.
Penetapan nilai a dan b seperti pada gambar 3.6 yang merupakan dua karakter berurutan di hitung setelah pola tersebut, antara lain :
Dimana, P = Pattern ; m = banyak pola yang dicari ; n = nilai tengah dari banyak pola yang dicari.
Pada contoh diatas, berarti : Kata “perangai” memiliki nilai a = “a” ; b = “a”
Kata “degil” memiliki nilai a = “g” ; b = “o” Kata “orang” memiliki nilai a = “g” ; b = “o”
Kata “segan” memiliki nilai a = “g” ; b = “o” Kata “teman” memiliki nilai a = “g” ; b = “o”
Proses penetapan nilai a dan b dapat dilihat pada gambar 3.7.
a n
g a
i b
e d
a a
l g
o r
i t
m a
... r
e p
s e
g a
n b
e d
a a
l g
o r
i t
m a
... d
e g
i l
b e
d a
a l
g o
r i
t m
a ...
o r
a n
g b
e d
a a
l g
o r
i t
m a
...
Pattern Text
a = P[n-m-1] b = P[n-m-2]
Universitas Sumatera Utara
shiftr a, b = � { +
− −
− � +
� [ − ] = � [�][� + ] =
� [ ] = ℎ ��
}
t e
m a
n b
e d
a a
l g
o r
i t
m a
...
Gambar 3.7 Ilustrasi posisi penentuan letak pada bagian kanan teks
3. Lakukan loop yang dimulai dari awal sampai akhir karakter sebanyak m-2.
4. Pada saat terjadi looping, algoritma menghitung nilai array nextl yang akan
dimasukkan kedalam variabel shiftl. Apabila hasil array nextl lebih dari satu nilai, maka algoritma memilih nilai terkecil dari hasil tersebut. Proses
perhitungan nilai shiftl pada gambar 3.8 sebagai berikut.
Gambar 3.8 Aturan Operasi Hitung Nilai shift kanan
Berdasarkan contoh sebelumnya, maka nilai shiftra,b pada kata “perangai” = shiftr “a”,”a” =
m + 2 = 8 + 2 = 10
nilai shiftra,b pada kata “degil” = shiftr “g”,”o” =
m + 2 = 5 + 2 = 7
nilai shiftra,b pada kata “orang” = shiftr “g”,”o” =
m + 1 = 5 + 1 = 6
nilai shiftra,b pada kata “segan” = shiftr “g”,”o” =
m + 2 = 5 + 2 = 7
nilai shiftra,b pada kata “teman” = shiftr “g”,”o” =
m + 2 = 5 + 2 = 7
Hal ini berarti bahwa algoritma akan melakukan penggeseran kata “orang”
sebanyak 9 karakter ke kiri dan kata”segan” “perangai”, “degil”, “teman” sebanyak 10 karakter ke kiri. Penentuan nilai shiftr selanjutnya ditentukan oleh
dua karakter berurutan a,b pada teks. Keseluruhan proses penentuan nilai shift dapat dilihat pada gambar 3.8 sebagai berikut.
Universitas Sumatera Utara
Gambar 3.9 Pseudocode Pre-processing bad character shift Algoritma Berry-
Ravindran. Sumber : Hudaib et al, 2008
Fase Pencarian
Apabila nilai shiftl dan shiftr sudah didapatkan dari fase pre-processing, maka program akan memulai fase pencarian menggunakan algoritma Two Sliding
Windows. Proses pencarian kata yang sesuai dengan dokumen adalah sebagai berikut :
1. Pencocokan string dari sebelah kiri teks dimulai dari posisi akhir string sampai
posisi awal string. Jika terjadi kecocokan, maka algoritma akan berhenti. Jika tidak, maka lanjutkan ke langkah 3.
2. Pencocokan string dari sebelah kanan teks dimulai dari posisi awal string sampai
posisi akhir string. Jika terjadi kecocokan, maka algoritma akan berhenti. Jika tidak, maka lanjutkan ke langkah 3.
3. Penentuan nilai shift kiri dan kanan dari algoritma BR.
4. Menggeser pattern sesuai nilai shift yang didapat dari langkah 3. Pada bagian
kiri akan menggeser ke sebelah kanan dan bagian kanan menggeser ke sebelah kiri.
Seperti contoh sebelumnya, Kata “perangai” dengan nilai shiftl = 10 ; shiftr = 10.
Begin shiftl=shiftr=m+2
for each character i=0 ….. i=m-2 Nextl[i] = m-I, nextr[i] = m-m-2-i
if P[m-1] = a { shiftl=1, shiftr=m+1 } else if P[0] = b { shiftl = m+1, shiftr =1 }
else if P[i][i+1] = ab { shiftl=nextl[i], shiftr=nextr[i] } End
Universitas Sumatera Utara
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7
1 2 3 4 5 6 7
Bagian kiri teks
p e
r a
n
e r
d a
s a
r k
a n
a n
b
g a
i
r u
g e
p e
r a
n
e r
d a
s a
r k
a n
a n
b
g a
i
r u
g e
a h
a h
y ...
y ...
Bagian kanan teks
b e
d a
a l
g o
r i
t a
m
p e
r a
n g
a i
r b
e d
a a
l g
o r
i t
a m
p e
r a
n g
a i
e b
g n
a y
... r
e b
g n
a y
...
Kata “degil” dengan nilai shiftl = 7 ; shiftr = 7. Bagian kiri teks
d e
g i
l
e r
d a
s a
r k
a n
a n
b r
u g
e a
...
d e
g i
l
e r
d a
s a
r k
a n
a n
b r
u g
e a
...
Bagian kanan teks
r b
e d
a a
l g
o r
i t
a m
d e
g i
l
e b
g n
a y
...
r b
e d
a a
l g
o r
i t
a m
d e
g i
l
e b
g n
a y
...
Universitas Sumatera Utara
1 2 3 4 5 6 7
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7
Kata “orang” dengan nilai shiftl = 7 ; shiftr = 6. Bagian kiri teks
Bagian kanan teks
Kata “segan” dengan nilai shiftl = 7 ; shiftr = 7. Bagian kiri teks
Bagian kanan teks
o r
a n
g
e r
d a
s a
r k
a n
a n
b r
u g
e a
...
o r
a n
g
e r
d a
s a
r k
a n
a n
b r
u g
e a
...
r b
e d
a a
l g
o r
i t
a m
o r
a n
g
e b
g n
a y
...
r b
e d
a a
l g
o r
i t
a m
o r
a n
g
e b
g n
a y
...
s e
g a
n
e r
d a
s a
r k
a n
a n
b r
u g
e a
...
s e
g a
n
e r
d a
s a
r k
a n
a n
b r
u g
e a
...
r b
e d
a a
l g
o r
i t
a m
s e
g a
n
e b
g n
a y
...
r b
e d
a a
l g
o r
i t
a m
s e
g a
n
e b
g n
a y
...
Universitas Sumatera Utara
1 2 3 4 5 6 7
1 2 3 4 5 6 7
Kata “teman” dengan nilai shiftl = 7 ; shiftr = 7. Bagian kiri teks
t e
m a
n
e r
d a
s a
r k
a n
a n
b r
u g
e a
...
t e
m a
n
e r
d a
s a
r k
a n
a n
b r
u g
e a
...
Bagian kanan teks
5. Kembali ke langkah 1 untuk melakukan pencocokan string dan posisi indeks
pencarian yang baru ditentukan dari nilai shift pada proses pre-processing algoritma BR. Pencocokan terus dilakukan hingga pattern berada ditengah teks
n 2 . Apabila masih tidak terdapat kecocokan dengan pattern sampai di tengah teks, maka algoritma memberikan hasil kosong. Proses pencocokan
string menggunakan algoritma TSW dapat dilihat pada gambar 3.9 sebagai berikut.
Gambar 3.10 Pseudocode Algoritma Two Sliding Windows TSW Sumber : Hudaib
et al 2008
r b
e d
a a
l g
o r
i t
a m
t e
m a
n
e b
g n
a y
...
r b
e d
a a
l g
o r
i t
a m
t e
m a
n
e b
g n
a y
...
L=m-1 text index used from left R=n-m-1-1 text index used from right
Tindex=0; text index used to control the scanning process …
Universitas Sumatera Utara
Gambar 3.10 Pseudocode Algoritma Two Sliding Windows lanjutan Sumber : Hudaib
et al 2008
3.3 Rancangan Antar Muka