博耶-穆爾字符串搜索算法

在計算機科學裏 ， 博耶 - 穆爾字符串搜索算法是一種非常高效的字符串搜索算法 。 它由和設計於1977年 。 此算法僅對搜索目標字符串 （ 關鍵字 ） 進行預處理 ， 而非被搜索的字符串 。 雖然博耶 - 穆爾算法的執行時間同樣線性依賴於被搜索字符串的大小 ， 但是通常僅爲其它算法的一小部分 ： 它不需要對被搜索的字符串中的字符進行逐一比較 ， 而會跳過其中某些部分 。 通常搜索關鍵字越長 ， 算法速度越快 。 它的效率來自於這樣的事實 ： 對於每一次失敗的匹配嘗試 ， 算法都能夠使用這些信息來排除儘可能多的無法匹配的位置 。