Lompat ke isi

Algoritma pencarian string: Perbedaan antara revisi

Ensiklopedia Pengetahuan Universitas Islam Sultan Agung
Maintenance script (bicara | kontrib)
Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 29188058; atribusi sumber disertakan.
 
Maintenance script (bicara | kontrib)
Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi
 
Baris 1: Baris 1:
'''Algoritma pencarian string''' ([[bahasa Inggris]]: ''string matching algorithm'') atau sering disebut juga pencocokan string adalah [[algoritme]] untuk melakukan pencarian semua kemunculan [[string]] pendek <math>pattern[0..n-1]</math> yang disebut pattern di string yang lebih panjang <math>teks[0..m-1]</math> yang disebut teks.
'''Algoritma pencarian string''' ([[bahasa Inggris]]: ''string matching algorithm'') atau sering disebut juga pencocokan string adalah [[algoritme]] untuk melakukan pencarian semua kemunculan [[string]] pendek <math>pattern[0..n-1]</math> yang disebut pattern di string yang lebih panjang <math>teks[0..m-1]</math> yang disebut teks.<ref>Lecroq, Thierry Charras, Christian. 2001. Handbook of Exact String Matching Algorithm. ISBN 0-9543006-4-5</ref>


Algoritma-algoritma pencocokkan string dapat diklasifikasikan menjadi tiga bagian menurut arah pencariannya.
Algoritma-algoritma pencocokkan string dapat diklasifikasikan menjadi tiga bagian menurut arah pencariannya.
Baris 21: Baris 21:


Berikut adalah Algoritma brute force yang sedang bekerja mencari string:
Berikut adalah Algoritma brute force yang sedang bekerja mencari string:


=== Pseudocode ===
=== Pseudocode ===
Baris 33: Baris 32:


  Deklarasi:
  Deklarasi:
         i, j: integer
         i, j: integer  


  Algoritma:
  Algoritma:
Baris 43: Baris 42:
                 if(j >= n) then
                 if(j >= n) then
          ketemu[i]:=true;
          ketemu[i]:=true;
                 endif
                 endif  
         endfor
         endfor
== Referensi ==


== Lihat pula ==
== Lihat pula ==
Baris 57: Baris 53:
*  [http://www-igm.univ-mlv.fr/~lecroq/string/ EXACT STRING MATCHING ALGORITHMS - Animation in Java]
*  [http://www-igm.univ-mlv.fr/~lecroq/string/ EXACT STRING MATCHING ALGORITHMS - Animation in Java]


 
== Referensi ==
<references />


== Sumber dan atribusi ==
== Sumber dan atribusi ==


Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Algoritma+pencarian+string&oldid=29188058 Wikipedia bahasa Indonesia], revisi 29188058 (2026-05-02T15:40:56Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.
Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Algoritma+pencarian+string&oldid=29188058 Wikipedia bahasa Indonesia], revisi 29188058 (2026-05-02T15:40:56Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.
<!-- WIKI_UNISSULA_PRESENTATION_V4 -->

Revisi terkini sejak 23 Agustus 2026 10.32

Algoritma pencarian string (bahasa Inggris: string matching algorithm) atau sering disebut juga pencocokan string adalah algoritme untuk melakukan pencarian semua kemunculan string pendek pattern[0..n1] yang disebut pattern di string yang lebih panjang teks[0..m1] yang disebut teks.[1]

Algoritma-algoritma pencocokkan string dapat diklasifikasikan menjadi tiga bagian menurut arah pencariannya.

  • Dan kategori terakhir, dari arah yang ditentukan secara spesifik oleh algoritma tersebut, arah ini menghasilkan hasil terbaik secara teoretis, algoritma yang termasuk kategori ini adalah:
    1. Algoritme Colussi
    2. Algoritme Crochemore-Perrin

salah satunya algoritma SUSAN

Algoritma brute force dalam pencarian string

Algoritma brute force (bahasa Inggris: brute-force search) merupakan algoritma pencocokan string yang ditulis tanpa memikirkan peningkatan performa. Algoritma ini sangat jarang dipakai dalam praktik, tetapi berguna dalam studi pembanding dan studi-studi lainnya.

Cara kerja

Secara sistematis, langkah-langkah yang dilakukan algoritma brute force pada saat mencocokkan string adalah:

  1. Algoritma brute force mulai mencocokkan pattern pada awal teks.
  2. Dari kiri ke kanan, algoritma ini akan mencocokkan karakter per karakter pattern dengan karakter di teks yang bersesuaian, sampai salah satu kondisi berikut dipenuhi:
    1. Karakter di pattern dan di teks yang dibandingkan tidak cocok (mismatch).
    2. Semua karakter di pattern cocok. Kemudian algoritma akan memberitahukan penemuan di posisi ini.
  3. Algoritma kemudian terus menggeser pattern sebesar satu ke kanan, dan mengulangi langkah ke-2 sampai pattern berada di ujung teks.

Berikut adalah Algoritma brute force yang sedang bekerja mencari string:

Pseudocode

Pseudocode algoritma brute force ini:

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

Lihat pula

Pranala luar

Referensi

  1. Lecroq, Thierry Charras, Christian. 2001. Handbook of Exact String Matching Algorithm. ISBN 0-9543006-4-5

Sumber dan atribusi

Konten artikel ini diadaptasi dari Wikipedia bahasa Indonesia, revisi 29188058 (2026-05-02T15:40:56Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.