Manache算法 定义:是一个判断回文子串的算法,我们结合例题解释: 题目:给定一个长度为 n 的字符串 S,求其最长回文子串 一个字符串是回文的,当且仅当反转后的串与原串完全相等 分析:对于这个题目,有三种主流思路: 一:Hash+二分 计算字符串的前缀hash值 枚举中点,二分回文字串的长度 时间复杂度:$O(nlogn)$ 二:回文自动机 复杂度是线性的,但是编程复杂度极高,思维难度极高. 三:Manache算法 复杂度是线性的,思维难度低,编程难度低 讲解Manache方法 对于Man…