《编程之美》字符串移位包含问题

《编程之美》字符串移位包含问题,个人觉得这个问题也可以通过求模的方式获得,代码如下
        String src="AABCD"; //源字符串
        String des="AABC";//匹配字符串
       
        char[] chsrc=src.toCharArray();
        char[] chdes=des.toCharArray();
       
        for(int i=0;i<chsrc.length;i++){
                int j=i;
                 for(;j<chdes.length+i;j++){
                     if(chdes[(j-i)%chsrc.length]!=chsrc[j%chsrc.length])break;  //依次匹配,大于的就求模
                 }
                
                 if(j==(chdes.length+i))System.out.println("true");
        }

 

最差的情况也是O(n^2),当然这里的比较还可以根据《算法导论》中的字符串匹配优化算法来获取,可以将时间复杂度进一步降低

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值