5. 最长回文子串

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

 输入: "babad"
 输出: "bab"
 注意: "aba" 也是一个有效答案。

暴力遍历,直接超时了

class Solution {
    public String longestPalindrome(String s) {
        String res="";
        int maxlen=0;
        int begin=0;
        if(s.length()<2)
            return s;
        for(int i=0;i<s.length();i++){
            for(int j=i+1;j<=s.length();j++){
                if(isHuiWen(s.substring(i,j))&&(j-i+1)>maxlen) 
                    res=s.substring(i,j);
                    maxlen=Math.max(res.length(),maxlen);
            }
        }
        return res;   
    }

    public boolean isHuiWen(String s){
        for(int i=0;i<s.length()/2;i++){
            if(s.charAt(i)!=s.charAt(s.length()-i-1))
                return false;
        }
        return true;
    }
}
posted @ 2020-08-25 21:24  _zjk  阅读(78)  评论(0)    收藏  举报