Algoritma Brute Force



Algoritma Brute Force meruapakan algoritma pencocokan string yang di tulis tampa memikirkan peningkatan performa. algoritma ini sangat jarang dipakai dalam praktek, namun berguna dalam studi pembandingan dan studi-studi lainya.

cara kerja :

Secara sistemastis, langkah - langkah yang dilakukan algoritma brute force pada saat mencocokan string adalah:

1. algoritma brute force mulai mencocokan pattern pada awal teks.

2. dari kiri ke kanan, algoritma ini akan mencocokan karakter perkarakter pattern dengan karakter teks yang bersesuaian, samapi salah satu kondisi berikut terpenuhi.

  • karakter di pattern di teks yang dibandingkan tidak cocok (mismatch)
  • semua karakter di pattern cocok, kemudian algoritma akan memberitukan penemuan di posisi ini
3. algoritma kemudian terus menggeser pattern sebesar atau kekanan, dan mengulangi langkah kedua samapai pattern berada di ujung teks

Contoh Pseudocode :


procedure BruteForceSearch(
        input m, n : integer,
        input P : array[0..n-1] of char,
        input T : array[0..m-1] of char,
        output ketemu : array[0..m-1] of boolean
       )

Deklarasi:
       i, j: integer 

Algoritma:
        for (i:=0 to  m-n) do
               j:=0
               while (j < n and T[i+j] = P[j]) do    
                        j:=j+1
               endwhile
               if(j >= n) then
                         ketemu[i]:=true;
               endif 
        endfor