Longest Palindromic Substring

链接

class Solution{
public String longestPalindrome(String s) {
    //字符串转数组
   char[] chars = s.toCharArray();
   int len = s.length();
    //记录回文数组长度,而不是开头和结尾,从外圈向内圈包围,不断缩小范围
   while (len >= 0) {
       for (int i = 0; i + len - 1 < chars.length; i++) {
           int left = i;
           int right = i + len - 1;
                     // true小写
           boolean good = true;
           while (left < right) {
               if (chars[left] != chars[right]) {
                                 //false小写
                   good = false;
                   break;
               }
                             //外层符合条件,向内圈收拢
               left++;
               right--;
           }
                     //全部检测符合规定
           if (good)
               // substring(a,b) 不包含b
               return s.substring(i, i + len);
       }
             //这么长是不可能了,降低长度要求
       len--;
   }
   return "";
}
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容