遍历每个字符,以该字符为中心,不断向两边扩展,求回文字符串的最大长度
注意分为奇偶,比如xyzabbaxyz
,b为中心的时候分为b和bb
function getLongestPalindrome( A ) {
function getLength(begin,end){
while(begin>=0 && end<A.length && A[begin]==A[end]){
begin--;
end++;
}
return end-begin-1;//返回长度
}
let maxLen = 1;
for(let i=0; i<A.length-1; i++){//以每个点为中心
maxLen = Math.max( maxLen, getLength(i,i), getLength(i,i+1) );
}
return maxLen;
}