В чем основные отличия между поисковым алгоритмом Knuth-Morris-Pratt и алгоритмом поиска Boyer-Moore?
Я знаю, что KMP выполняет поиск Y в X, пытаясь определить шаблон в Y и сохраняет шаблон в векторе. Я также знаю, что BM работает лучше для небольших слов, таких как DNA (ACTG).
Каковы основные отличия в том, как они работают? Какой из них быстрее? Какой из них менее компьютерный? В каких случаях?