解析
解法1:中心扩散法
/**
* @param {string} s
* @return {string}
*/
//中心扩散法
var longestPalindrome = function(s) {
let len = s.length
if (s.length<2){
return s
}
let res = ""
for(let i = 0;i < len;i++){
//奇数串
findstr(i,i)
//偶数串
findstr(i,i+1)
}
function findstr(m,n){
//从中线位置开始向两边扩散
while(m >= 0 && n < len && s[m] === s[n]){
m--
n++
}
//注意点1:最终结束的边界的m,n正好比我们想要的多一次 所有正确的边界是m+1 n-1
//注意点2:实际字符串长度n-m-1
if(n-m-1 > res.length){
res = s.slice(m+1,n)
}
}
return res
};