美文网首页
最长回文子串

最长回文子串

作者: 二进制的二哈 | 来源:发表于2019-11-25 22:35 被阅读0次

    题目来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/longest-palindromic-substring

    给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。

    示例 1:
    
    输入: "babad"
    输出: "bab"
    注意: "aba" 也是一个有效答案。
    示例 2:
    
    输入: "cbbd"
    输出: "bb"
    

    Java代码:

    class Solution {
        public String longestPalindrome(String s) {
            if(s == null || s.length() == 1)
                return s;
            String maxRes = "";
            char[] arr = s.toCharArray();
            for(int i = 0;i<arr.length;i++){
                char cur = arr[i];
                for(int j = arr.length-1;j>=i;j--){
                    char right = arr[j];
                    if(cur == right){
                        //有可能是回文字段,检查一下
                        String toCheck = s.substring(i,j+1);
                        boolean ckRes = check(toCheck);
                        if(ckRes){
                            //是回文字段,跟当前的最大回文字段比较
                            if(toCheck.length() > maxRes.length()){
                                maxRes = toCheck;
                            }
                            //如果这个是回文字段,那么也不用往左走了,因为左边的肯定比这个短
                            break;
                        }
                    }
                }
            }
            return maxRes;
    
            
        }
    
    
    
    
        private boolean check(String s){
            if(s != null && s.length() > 0){
                char[] arr = s.toCharArray();
                int left = 0;
                int right = s.length()-1;
                boolean res = true;
                while(left <= right){
                    if(arr[left] != arr[right]){
                        res = false;
                        break;
                    }
                    left++;
                    right--;
                }
                return res;
            }
            return false;
        }
    
    
    }
    

    相关文章

      网友评论

          本文标题:最长回文子串

          本文链接:https://www.haomeiwen.com/subject/krjswctx.html