kmp改进算法

来源:互联网 发布:网络最火的小男孩 编辑:程序博客网 时间:2024/05/16 15:41

    public String GetNextVal(String c) {
        int i=1;
        int[] nextval=new int[c.length()];
        nextval[0]=0;
        int j=0;
        while(i<c.length())
        {
            if(j==0||Character.toString(c.charAt(i-1)).equals(Character.toString(c.charAt(j-1))))
            {
                ++i;
                ++j;
                if(Character.toString(c.charAt(i-1)).equals(Character.toString(c.charAt(j-1))))
                nextval[i-1]=nextval[j-1];
                else nextval[i-1]=j;
            }//if
            else
                j=nextval[j-1];
        }
       


    }

原创粉丝点击