给你一个字符串 s,找到 s 中最长的 回文 子串。

function longestPalindrome(s: string): string {
    //思路:由中心扩散进行遍历,遍历到不满足回文字符串为止,找到每个 i 都需要进行奇数遍历以及偶数遍历
    if(s.length < 2) return s
    let start = 0
    let max_length = 0
    function extend(left,right){
        while (left >= 0 && right < s.length && s[left] === s[right]) {
            const curr_length = right - left + 1;
            if (curr_length > max_length) {
                max_length = curr_length;
                start = left;
            }
            left--;
            right++;
        }
    }
    for(let i=0;i<s.length;i++){
        extend(i,i)
        extend(i,i+1)
    }
    return s.substring(start,start+max_length)
};