KMP之完整版-java

KMP之完整版-java,第1张

//完整KMP算法
public class KMP2 {
    public static void main(String[] args) {
        KMP2 obj = new KMP2();

        String str1 = "askanfasdnabcdassabefafdfsd";
        String str2 = "abcdassabe";
        //1.求解next数组
        int[] next = new int[str2.length()];
        obj.getNext(str2.toCharArray(), next);
        //2.模式匹配成功返回索引 失败-1
        int index = obj.getKMP(str1.toCharArray(),str2.toCharArray(),next);
        System.out.println(index);
    }

    //方法2 kmp匹配,类似bf算法
    private int getKMP(char[] str1, char[] str2, int[] next) {
        int m = 0;  //指向str1
        int n = 0;  //指向str2
        while (m

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/721082.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-04-25
下一篇2022-04-25

发表评论

登录后才能评论

评论列表(0条)

    保存