思路
如果 i-j 是回文子串,那么i+1-----j-1 也是回文子串
定义一个二维数组,每一项代表 是否是回文子串
小tips: Array.from 可以用来拷贝数组
Array.from(new Array(9),() => new Array(9).fill(0))
new Array(9).fill(new Array(9).fill(0))
两者不相等
function longestPalindrome (string) {
let length = string.length;
let list = Array.from(new Array(length ),() => new Array(length ).fill(0));
let result = '';
for (let i =length - 1; i>=0; i--) {
for (let j = i; j< length; j ++) {
list[i][j] = (string[i] === string[j] && (j-i < 2 || list[i+1][j-1]))
if (j-i > result.length && list[i][j]) {
result = string.substring(i, j+1);
}
}
}
return result ;
}