Contoh di mana Algoritma Knuth-Morris-Pratt lebih cepat daripada Boyer-Moore?


10

Halaman ini tentang Algoritma Knuth-Moriss-Pratt dibandingkan dengan Boyer-Moore menjelaskan kemungkinan kasus di mana algoritma Boyer-Moore menderita dari jarak lompatan kecil sementara KMP dapat bekerja lebih baik.
Saya mencari contoh yang bagus (teks, pola) yang dapat dengan jelas menunjukkan kasus ini.


Jawaban:



3

Pola-pola ini akan membuat KMP bekerja lebih cepat:

T = aaaaaaaaaa P = aaaa KMP akan mencoba 10 langkah pembandingan dimana Boyer-Moore akan mengambil 28

Contoh lain:

T = aaaaaaaaaa P = abab KMP akan mencoba 8 membandingkan langkah-langkah di mana BM akan mencoba 12.


Pada contoh pertama, kedua algoritma akan menemukan kecocokan segera, pada shift pertama - bagaimana mereka membuat lebih dari 4 perbandingan?
BartoszKP
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.