Longest Palindromic Substring

鏈接

class Solution{
public String longestPalindrome(String s) {
    //字符串轉(zhuǎn)數(shù)組
   char[] chars = s.toCharArray();
   int len = s.length();
    //記錄回文數(shù)組長度,而不是開頭和結(jié)尾,從外圈向內(nèi)圈包圍,不斷縮小范圍
   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;
               }
                             //外層符合條件,向內(nèi)圈收攏
               left++;
               right--;
           }
                     //全部檢測符合規(guī)定
           if (good)
               // substring(a,b) 不包含b
               return s.substring(i, i + len);
       }
             //這么長是不可能了,降低長度要求
       len--;
   }
   return "";
}
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容