5. Longest Palindromic Substring Leetcode Python 2016 new Season

Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring.

Show Company Tags
Show Tags
Show Similar Problems










There are two cases we need to deal with odd like 'ada' even like 'adda'

class Solution(object):
    def getPalindromeString(self, s, left_index, right_index):
        while left_index >= 0 and right_index < len(s) and s[left_index] == s[right_index]:
            left_index -= 1
            right_index += 1
        return s[left_index + 1 : right_index]
    def longestPalindrome(self, s):
        """
        :type s: str
        :rtype: str
        """
        longest_string = ''
        for  index in range(len(s)):
            first_string = self.getPalindromeString(s, index, index)
            second_string = self.getPalindromeString(s, index, index + 1)
            if len(first_string) > len(longest_string):
                longest_string = first_string
            if len(second_string) > len(longest_string):
                longest_string = second_string
        return longest_string
    


你可能感兴趣的:(5. Longest Palindromic Substring Leetcode Python 2016 new Season)