// 中心扩展法
function longestPalindrome($s) {
$len = strlen($s);
$max = 0;
$start = 0;
$i = 0;
while ($i < $len) {
if ($len - $i < $max / 2) {
break;
}
$left = $right = $i;
while ($right < $len && $s[$right] == $s[$right+1]) {
$right++;
}
$i = $right+1;
while ($left >0 && $right < $len - 1 && $s[$left-1] == $s[$right+1]) {
$left--;
$right++;
}
if ($right - $left + 1 > $max) {
$max = $right - $left + 1;
$start = $left;
}
}
return substr($s, $start, $max);;
}
求最长回文子串【php版】
最新推荐文章于 2022-02-17 11:06:14 发布