

暴力解法
枚举每一条子串,判断长度是否大于当前的最大长度和该子串是否是回文子串。
class Solution {public String longestPalindrome(String s) {int len = s.length();if(len < 2){return s;}int maxLen = 1;int left = 0;char[] arr = s.toCharArray();for(int i = 0;i < len - 1;i++){for(int j = i + 1;j < len;j++){if(j - i + 1 > maxLen && check(arr,i,j)){ // 进行剪枝的操作,减少多余的比较次数,如果长度比当前最大长度还小,就不需要判断是否是回文子串了。maxLen = j - i + 1;left = i;}}}return s.substring(left,left + maxLen);}public boolean check(char[] arr,int left,int right){boolean flag = true;while(left < right){if(arr[left] != arr[right]){flag = false;break;}left++;right--;}return flag;}}
