随笔分类 -  字符串处理

KMP和manacher
摘要:一:背景 给定一个字符串,求出其最长回文子串。例如: 以上问题的传统思路大概是,遍历每一个字符,以该字符为中心向两边查找。其时间复杂度为O(n^2),效率很差。 1975年,一个叫Manacher的人发明了一个算法,Manacher算法(中文名:马拉车算法),该算法可以把时间复杂度提升到O(n)。下 阅读全文
posted @ 2018-06-05 18:49 爱国呐 阅读(1464) 评论(1) 推荐(0)
摘要:一:背景 kmp算法又称“看毛片”算法,是一个效率非常高的字符串匹配算法。 kmp算法完成的任务是:字符串匹配。给你两个字符串,寻找其中一个字符串是否包含另一个字符串,如果包含,返回包含的起始位置(或者包含几次)。如下面两个字符串: S数组包含F数组两次,分别在下标10,26处。 常规方法是遍历a的 阅读全文
posted @ 2018-06-04 16:07 爱国呐 阅读(386) 评论(0) 推荐(0)