模式匹配问题
模式匹配问题是指,给出一个主串s和子串t,要求在s中寻找子串t,求出t出现的第一个位置,t又称为模式串。
BF算法
考虑最暴力的做法,我们设i为s的下标,j为t的下标。
从s[0]和t[0]开始匹配,若匹配成功则i++,j++匹配下一个。
若匹配不成功,即s[i] != t[j],则令i =i-j+1,j=0。相当于每次失配时j移动到模式串开头,i移动到本次失配的起始字符的下一个位置。
int bf(char *s,char *t){//主串s,子串t进行模式匹配,返回第一次出现子串t的开始下标 int i=0,j=0; while(s[i]!='