經典演算法 BF演算法(字串匹配)

2022-07-11 12:27:06 字數 530 閱讀 5612

字串的匹配演算法也是很經典的乙個演算法,在面試的時候常常會遇到,而bf演算法是字串模式匹配中的乙個簡單的演算法

bf演算法,即暴力(brute force)演算法,是普通的模式匹配演算法,思想簡單,**結構也簡單

bf演算法的思想就是將目標串s的第乙個字元與模式串t的第乙個字元進行匹配,若相等,則繼續比較s的第二個字元和 t的第二個字元;若不相等,則比較s的第二個字元和t的第乙個字元,依次比較下去,直到得出最後的匹配結果。

分析:

要完成對於所有字元的匹配工作,可以遍歷母串,並逐個與子串比較,若相同,則字串匹配位後移,若不成功,歸零,當匹配成功長度等於字串長度,結束遍歷,返回結果

**:

void get(string a,string b)

{ int i,j=0;

for(i=0;i若母串長度位m,字串長度位n,則:

最好情況平均時間複雜度位:o(m+n)

最壞情況平均時間複雜度位:o(m*n)

字串匹配演算法 BF

brute force演算法,簡稱bf演算法,是一種簡單樸素的模式匹配演算法,常用語在乙個主串string內查詢乙個子串 pattern的出現位置。核心思想 i遍歷主串string i 每自增一次,內層迴圈用j遍歷子串pattern,同時判斷patter j string i j 若條件成立,j 自...

字串模式匹配演算法 BF演算法

include include intbf char str1,char str2,int length1,int length2,int pos int main 字串模式匹配演算法 str1為主串,str2為子串 length1為主串長度,length2為子串長度,intbf char str1...

BF演算法與KMP演算法 字串匹配演算法

bf演算法,簡稱暴力破解 bruce force 又稱樸素模式的匹配演算法。可以看出bf演算法的思想就是將目標串s的第乙個字元與模式串t的第乙個字元進行匹配,若相等,則繼續比較s的第二個字元和t的第二個字元 若不相等,則比較s的第二個字元和t的第乙個字元,依次比較,直到得出最後的匹配結果。這種演算法...