Gambar 3.6 pergeseran algoritma brute force
3.6.1. Cara Kerja Algoritma Brute Force Pada Pencarian Word Suggestion
1. Menentukan pattern dan teks
Algoritma Brute Force adalah algoritma pencocokan string yang tediri dari dua komponen utama, yaitu pattern dan teks. Pattern adalah kata yang akan dicari,
sedangkan teks adalah kata-kata yang akan dicocokan dengan pattern. Jika diimplementasikan kedalam pencarian Word Suggestion, maka yang menjadi
pattern adalah kata yang diketikkan oleh user, sedangkan teks adalah kata-kata
didalam database. Berdasarkan dari contoh kasus analisis pencarian Word Suggestion
sebelumnya, maka pengelompokan pattern dan teks dapat dilihat pada tabel berikut.
Universitas Sumatera Utara
Tabel 3.4 Simulasi Pencarian Word Suggestion
2. Proses pencarian Word Suggestion
Setelah pattern dan teks terbentuk maka proses selanjutnya adalah pencocokan karakter. Algoritma Brute Force adalah algoritma yang melakukan pencocokan
karakter dari sebelah kiri ke kesebelah kanan dan jika antara pattern dan teks terdapat kecocokan match maka algoritma akan menghasilkan nilai true.
Percobaa n Ke-
Teks yang di ketik oleh user
Teks di database
Teks yang menjadi sugesti
1 k
aku
-
kiat kiat
kita kita
kata kata
2 ki
aku
-
kiat kiat
kita kita
kata
-
3 kit
aku
-
kiat
-
kita kita
kata -
Universitas Sumatera Utara
3.6.2. Flowchart Algoritma Brute Force Pada Pencarian Word Suggestion
Berdasarkan analisis cara kerja diatas, berikut adalah Flowchart dari cara kerja Algoritma Brute Force pada Pencarian Word Suggestion dimana N didefinisikan
sebagai panjang teks dan M didefinisikan sebagai panjang pattern.
Gambar 3.7 Flowchart Cara Kerja Algoritma Brute Force pada pencarian
Word Suggestion
End Start
tidak
ya ya
Int n = text.lengthT Int m = pattern.length p
T = text.char P = pattern.char
i = 0 j = 1
i ≤ n-m
j = j + 1 i = i + 1
j = m
tidak j m and T[i + j] = P[j]
tidak
Input text pattern
match
mismatch
Universitas Sumatera Utara
Cara Kerja Algoritma Brute Force : 1.
Mula-mula pattern dicocokan pada awal teks. 2.
Dengan bergerak dari kiri ke kanan, bandingkan setiap karakter di dalam pattern dengan karakter yang bersesuaian di dalam teks sampai :
a. Semua karakter yang dibandingkan cocok atau sama pencarian berhasil, atau
b. Dijumpai sebuah ketidakcocokan karakter pencarian belum berhasil.
3. Bila pattern belum ditemukan kecocokannya dan teks belum habis, geser pattern
satu karakter ke kanan dan ulangi langkah 2.
3.6.3. Hasil Analisis Algoritma Brute Force Pada Pencarian Word Suggestion