Quick actions

cmd+k|ctrl+k

Navigation

Languages

getLongestPalindrom

Snippet info

Language

JavaScript

Visibility

public

Author

vritser

Created

2017-03-09T13:37:56Z

Updated

2017-03-09T13:37:56Z

function isPalindrome(s, i, l) {
    for (let j = i, k = i + l - 1, h = Math.floor(l / 2); h > 0; h--, j++, k--) {
        if (s[j] !== s[k]) {
            return false;
        }
    }
    return true;
}

function getLongestPalindrome(s) {
    let palindrome = s[0];
    for (let i = 0, n = s.length, m = n; i < n - 1; i++, m--) {
        for (let l = m; l > palindrome.length; l--) {
            if (isPalindrome(s, i, l)) {
                palindrome = s.substring(i, i + l);
            }
        }    
    }
    return palindrome;
}

console.log(getLongestPalindrome("bannana"));
INFO