拿他开刀,是因为面试的第一所公司就在最后一面(二面技术)的这个问题搞定的。枉费了黄翰老师业余的算法教育……
一、BF算法(BruteForce算法):
匹配模式是p,对应指针i;主串s,对应指针j。失配就主串指针后移,模式指针归零
int bf(string p, string s){
int i=0;
int j=0;
int cnt=0;
while(i<p.length() && j<s.length()){
if(p[i]==s[j]){
i++;
j++;
}else{
j++;
i=0;
}
}
if(i>=p.length()){
return j-i;
}else{
return -1;
}
}
一千万次,6s