leetcode最长回文字串

题目
在这里插入图片描述
暴力法

var a = function (start, end) {
    
    
    var l = end - start;
    if (l == 1) {
    
    
        return 1;
    }
    var ll = l / 2 + start;
    for (var i = start; i < ll; i++) {
    
    
        if (ss.charAt(i) != ss.charAt(end - i + start - 1)) {
    
    
            return 0;
        }
    }
    return 1;
}

var ss;
/**
 * @param {string} s
 * @return {string}
 */
var longestPalindrome = function (s) {
    
    
    ss = s;
    if (s.length == 1) {
    
    
        return s;
    }
    var max = 0;
    var start;
    var end;
    var l = s.length;
    var tl;
    for (var i = 0; i < l; i++) {
    
    
        if (l - i > max) {
    
    
            for (var j = l; j > i; j--) {
    
    
                tl = j - i;
                if (tl != 0 && tl > max) {
    
    
                    if (a(i, j)) {
    
    
                        max = tl;
                        start = i;
                        end = j;
                    }
                }
            }
        }
    }
    return s.substring(start, end);
};

https://leetcode.cn/problems/longest-palindromic-substring/submissions/

在这里插入图片描述
性能提高不了了
还有一个中间扩散法 我没试
找个难的题去 力扣还挺有意思!

猜你喜欢

转载自blog.csdn.net/qq_38913715/article/details/130085991