代码随想录算法训练营第九天 28. 实现 strStr() 459.重复的子字符串、字符串总结 、双指针回顾

28. 实现 strStr()

一般解法:暴力匹配 时间复杂度 O(m*n)

这里介绍了 KMP 算法: 如果遇到某位不匹配的时候,KMP 算法不是从头移动,而是跳到之前匹配的内容;这里要用前缀表f的前面找到与其导前缀下向再开始匹配,前缀铃包含首字母

不包含尾子母的所有子串,要求最长相等前后缀,前缀表是这个最长相等前后缀的数量的数组,跳到2的位置进行匹配,恰好是前缀表对应的数,遇见冲突的时候,要向前回退;

。。。KMP算法的代码实现,太忙了暂时没时间看了,之后有空再看

字符串总结:

这里有几个练习和算法的总结:

1. 双指针法:用双指针法来进行移除操作、删除重复项等操作,这是处理字符串的常用方法

双指针总结:

双指针体现了效率的优势:替换空格,解决N数之和的问题, 用两个指针向中间逼近的方式,来解决在一个for循环下完成两个for循环的部分

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值