题目: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000
public class Test11 {
public String longestPalindrome(String s) {
char[] a = s.toCharArray();
int len = 0;
int start = 0 ;
int end = 0;
for(int i = 0 ; i < a.length ; i++){
int len1 = getLen(a,i,i);
int len2 = getLen(a,i,i+1);
len = Math.max(len1, len2);
if(len > (end -start)){
start = i - (len-1)/2;
end = i + len/2;
}
}
return s.substring(start, end+1);
}
private int getLen(char[] a, int left, int right) {
while(left > 0 && right < a.length &&a[left] == a[right]){
left--;
right++;
}
return right - left -1;
}
***帅气的远远啊***