自己写的计算最长回文字符串长度的程序,测试时间太长不满足要求。我的思路是遍历字符串,计算以每个字符为中心的回文长度,复杂度为O(n^2);上网查阅找到一个manachor算法复杂度为O(n),算法很难理解,花费不少的时间去解读,这里简单记录一下。首先Manachor通过用“#”字符将原字符串隔开,以此消除长度为奇偶的影响;充分利用回文串的特点,计算半径的最小值(核心部分)。下图为示例上图中mx为当
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号