Desain dan Analisis Algoritma


Algoritma Brute Force String Match

String match adalah suatu algoritma yang digunakan untuk memecahkan masalah pencocokan suatu teks terhadap suatu teks lain. Banyak sekali algoritma yang digunakan untuk memecahkan masalah string match in, salah satunya adalah algoritma brute force string match.

Algoritma brute force string match adalah algoritma yang paling sederhana untuk memecahkan masalah string match. Cara kerja algoritma ini adalah dengan mencoba setiap posisi pattern(kata yang akan dicocokkan) terhadap teks, kemudian dilakukan proses pencocokan setiap katakter dan teks pada posisi tersebut. Berikut adalah psoudocode algoritma bruth force string match.

Dari psoudocode tersebut terlihat bahwa algoritma ini membutuhkan dua macam inputan, yakni input array karater teks dan input array pattern. Dalam perjalanan eksekusinya terdapat dua kali perulangan. Pada perulangan yang terdalam(while) terdapat suatu kondisi yang membandingkan suatu isi dari array pattern dengan array teks.

Berikut adalah implementasi algoritma brute force string match pada bahasa pemrograman java.

01 public class StringMatch {
02 private static void match(char[] text, char[] pattern) {
03 int j;
04 int cek = 0;
05 for (int i = 0; i <= text.length - pattern.length; i++) {
06 j = 0;
07 while (j < pattern.length && text[i + j] == pattern[j]){
08 j++;
09 }
10 if (j >= pattern.length) {
11 cek++;
12 }
13 }
14 if (cek > 0) {
15 System.out.println("DATA COCOK");
16 } else {
17 System.out.println("DATA TIDAK COCOK");
18 }
19 }
20 public static void main(String[] args) {
21 char[] x = {'I', 'S', 'E', 'N','G'};
22 char[] y = {'I', 'S', 'E', 'N', 'G', 'C', 'O', 'M', '.', 'C','O','M'};
23 match(y, x);
24 }
25 }

Kode program di atas adalah suatu program sederhana yang berusaha memeriksa apakah data array x terdapat pada array y sehingga kedua array ini memiliki kecocokan. Pengecekan kecocokan dengan menggunakan algoritma brute force string match yang direpresentasikan oleh method match. Program akan memberikan output berupa pesan “DATA COCOK” apabila memang terdapat kecocokan antara kedua data. Sebaliknya, program akan memberikan output pesan “DATA TIDAK COCOK” apabila setelah melalui prosedur pengecekan string match tidak ditemukan kesamaan antara kedua data tersebut.

Contoh output program diatas.

Okey.. demikian adalah sedikit pembahasan mengenai salah satu algoritma string match yang paling sederhana, brute force string match. semoga bermanfaat.

Download artikel ini.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s