5. Longest Palindromic Substring

题目: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.

public class Solution {
    public String longestPalindrome(String s) {
        if(s.isEmpty())
           return null;
        if(s.length()==1)
           return s;
        int n=s.length();
    //  String rec=s.substring(0,1);
        String max=s.substring(0,1);
        for(int i=0;i<n;i++)
            {
               
                String rec1=helper(s,i,i+1);
                String rec2=helper(s,i,i);
               
            if(!(rec1.length()<max.length()&&rec2.length()<max.length()))
                if(rec1.length()>=rec2.length())
                   max=rec1;
                else
                   max=rec2;
            }
        return max;
    }
   
    public String helper(String s,int begin,int end)
    {
    while(begin>=0&&end<=s.length()-1&&s.charAt(begin)==s.charAt(end))
        {
            begin--;
            end++;
        }
    return s.substring(begin+1,end);
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容