Каковы основные различия между поисковым алгоритмом Кнута-Морриса-Пратта и поисковым алгоритмом Бойера-Мура?
Я знаю, что KMP ищет Y в X, пытается определить шаблон в Y и сохраняет шаблон в векторе. Я также знаю, что BM лучше подходит для небольших слов, таких как ДНК (ACTG).
Каковы основные различия в том, как они работают? Какой из них быстрее? Какой из них менее жадный к компьютерам? В каких случаях?