给你一个文本串S,一个非空模板串T,问S在T中出现了多少次
数据范围:
1 \le len(S) \le 5*10^5, 1 \le len(T) \le 10^61≤len(S)≤5∗105,1≤len(T)≤106
复杂度要求:
O(n \cdot m) \O(n⋅m)
输入:
"ababab","abababab"
复制返回值:
2
复制
输入:
"abab","abacabab"
复制返回值:
1
public int kmp (String S, String T) { int length = S.length(); int i = T.length()-length; int count = 0; while(i>=0){ String temp = T.substring(i,length+i); if(temp.equals(S)){ count++; } i--; } return count; }