2018-03-21 最长回文子串搜索

(1)暴力解法

遍历字符串中所有的子串,然后对每个子串进行回文检测。时间复杂度O(n的三次方)

(2)对称性质改进

遍历所有子串改为遍历所有子串的中心点,向外扩散,从左自右,受到边界和对称性的影响,当长度达到一定时,达到边界,可不用再继续往外扩散探索。而整个字符串的字符以及字符间的空隙都有可能是这个中心点。只要遍历所有这些中心点,在向外扩散的同时,一边注意左右字符是否对称,一边注意是否达到最大边界即可。长度为n的字符串的中心点有2n-1个。每个中心点的平均比较次数为n/4(最长比较长度为n/2)。总得算法时间复杂度为O(n的平方)。

(3)马拉车算法

你可能感兴趣的:(2018-03-21 最长回文子串搜索)