private static void getnext(String p, int [] next)
{
for(int i =0;i<p.length();i++)
{
next[i]=0;
while(next[i]<i-1 && p.charAt(next[i])==p.charAt(i-1-next[i]))
next[i]++;
}
}
private static int kmp(String s, String p, int[] next)
{
int i=0,j=0;
for(;i< 待续
有空了解一下bm算法
原文:http://www.cnblogs.com/yangzhouyyz/p/5063053.html