目录
- 题目:
- 解析:
- 代码:
题目:
链接: link
解析:
代码:
class Solution {
public String longestPalindrome(String s) {
char[] ss = s.toCharArray();
int n = ss.length;
int begin = 0;//返回结果的起始字符串
int len = 0;//判断返回的字符串是否为最长的字符串
for(int i = 0; i < n; i++){
//先扩展偶数
int left = i, right = i;
while(right < n && left >= 0 && ss[left] == ss[right]){
left--;
right++;
}
if(right-left-1 > len){
len = right-left-1;
begin = left+1;
}
//扩展偶数
left = i;
right = left+1;
while(right < n && left >= 0 && ss[left] == ss[right]){
left--;
right++;
}
if(right-left-1 > len){
len = right-left-1;
begin = left+1;
}
}
return s.substring(begin,begin + len);
}
}