2月10日学习总结

1、早上
感觉自己的KMP还不熟练,知识点也有点模模糊糊,于是把大话数据结构上面的KMP知识点看了一遍,然后做本周最后的那个连接字符题,发现用枚举怎么优化也还是直接T了,上午并没能做出那题。(3h)
2、下午
继续做最后那个题目,换了一种思路用的KMP,将两个字符串合并成一个后再用KMP找出最长前后缀。结合这个思路和昨天做的KMP题目,终于写出了代码,测试也比我那枚举快了许多,结果一交还是T的,最后进行优化终于还是对了,一下午就做了一个题目。(4h)

题解:本题就是要求出已合并字符串与待合并字符串的最长前后缀(注意并不是单纯的两两单词的最长的前后缀1),因此需要用到KMP,但传统的KMP都是只求一个字符串的前后缀,本题却求的是分别两个字符串的前缀和后缀的最长相等长度,那么我们可以进行一些转变。将已合并的字符串接到新的待合并字符串的后面,把两个字符串合并成了一个,而且也正好按顺序待合并前缀在前面已合并字符串后缀在后面,就正好符合KMP做法。但不只是单纯的直接把整个已合并字符串都放后面,因为它会越来越长,实现KMP的时间复杂度也会

2月10日学习总结最先出现在Python成神之路

版权声明:
作者:Mr李
链接:https://www.techfm.club/p/17459.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>