本文共 617 字,大约阅读时间需要 2 分钟。
BF算法是普通的模式匹配算法,BF算法的思想就是将目标串S的第一个字符与模式串P的第一个字符进行匹配,
若相等,则继续比较S的第二个字符和P的第二个字符;若不相等,则比较S的第二个字符和P的第一个字符 依次比较下去,直到得出最后的匹配结果 如果当前字符匹配成功(即S[i] == P[j]),则i++,j++,继续匹配下一个字符; 如果失配(即S[i]! = P[j]),令i = i - (j - 1),j = 0。相当于每次匹配失败时,i 回溯,j 被置为0 思想:先从第一个字符开始匹配,如果p[j]==s[i],那么继续向下比较,一旦不相等,即回溯到目标串的下一个字符,重复工作。 成功条件:当循环结束时,判断j的值与模式串p的长度是否相等,如果相等,说明匹配成功到了模式p的最后一个字符。//a主串b子串 static int Match(string a,string b) { if (a.Length
static void Main(string[] args) { string a = "ababacf"; string b = "cf"; Console.WriteLine(Match(a,b)); Console.ReadKey(); }
转载地址:http://ldrxo.baihongyu.com/