Anda di halaman 1dari 2

Algoritma pencarian string atau sering disebut juga pencocokan string adalah algoritma untuk

melakukan pencarian semua kemunculan string pendek yang disebut pattern di string yang lebih
panjang yang disebut teks.
Pencocokkan string merupakan permasalahan paling sederhana dari semua permasalahan string lainnya,
dan dianggap sebagai bagian dari pemrosesan data, pengkompresian data, analisis leksikal, dan temu
balik informasi. Teknik untuk menyelesaikan permasalahan pencocokkan string biasanya akan
menghasilkan implikasi langsung ke aplikasi string lainnya.
Algoritma-algoritma pencocokkan string dapat diklasifikasikan menjadi tiga bagian menurut arah
pencariannya.
Tiga kategori itu adalah :

Dari arah yang paling alami, dari kiri ke kanan, yang merupakan arah untuk membaca,
algoritma yang termasuk kategori ini adalah:

Algoritma Brute Force


Algoritma dari Morris dan Pratt, yang kemudian dikembangkan oleh Knuth, Morris, dan Pratt

Dari kanan ke kiri, arah yang biasanya menghasilkan hasil terbaik secara praktikal, contohnya
adalah:

Algoritma dari Boyer dan Moore, yang kemudian banyak dikembangkan, menjadi Algoritma turbo
Boyer-Moore, Algoritma tuned Boyer-Moore, dan Algoritma Zhu-Takaoka;

Dan kategori terakhir, dari arah yang ditentukan secara spesifik oleh algoritma tersebut, arah
ini menghasilkan hasil terbaik secara teoritis, algoritma yang termasuk kategori ini adalah:

Algoritma Colussi
Algoritma Crochemore-Perrin
Algoritma brute force
Algoritma brute force merupakan algoritma pencocokan string yang ditulis tanpa memikirkan
peningkatan performa. Algoritma ini sangat jarang dipakai dalam praktek, namun berguna dalam studi
pembanding dan studi-studi lainnya.
Algoritma Boyer-Moore adalah salah satu algoritma pencarian string, dipublikasikan oleh Robert S.
Boyer, dan J. Strother Moore pada tahun 1977.
Algoritma ini dianggap sebagai algoritma yang paling efisien pada aplikasi umum.Tidak seperti algoritma
pencarian string yang ditemukan sebelumnya, algoritma Boyer-Moore mulai mencocokkan karakter dari
sebelah kanan pattern. Ide dibalik algoritma ini adalah bahwa dengan memulai pencocokkan karakter
dari kanan, dan bukan dari kiri, maka akan lebih banyak informasi yang didapat.

Anda mungkin juga menyukai