KMP算法的其中一种实现方式

思路:遍历str1,先匹配第一个,如果不相同,跳过,继续寻找,如果相同,截取和str2相同长度的子串,比较是否相同,如果相同,则返回,如果不同继续寻找,一直到str1到最后一个字符

  • package com.puhui.goosecard.web;

  • class GFG {

    • public static void main(String[] args) {

    • String str1 = "abceacmk32acmzq";

    • char[] chars1 = str1.toCharArray();

    • String str2 = "acm";

    • char[] chars2 = str2.toCharArray();

    • for (int i = 0; i < chars1.length; i++) {

      • if (chars1[i] != chars2[0]) {

        • continue;

      • }

      • String temp = str1.substring(i, i + str2.length());

      • if (temp.equalsIgnoreCase(str2)) {

        • System.out.print(i);

      • }

    • }

  • }

}

  • --------------------- 本文来自 hanruikai 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/hanruikai/article/details/82803096?utm_source=copy
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值