一、题目
二、代码
class Solution {
public:
string longestPalindrome(string s) {
//存储最长回文子串的字符串
string answer;
//存储任意回文子串的字符串
string temp;
//遍历寻找奇数回文子串
for(int i=0;i<s.size();i++)
{
int j=i-1;
int k=i+1;
temp.clear();
while(j>=0 && k<s.size())
{
if(s[j] != s[k])
{
break;
}
j--;
k++;
}
for(int l=j+1;l<k;l++)
{
temp += s[l];
}
if(temp.size() > answer.size())
{
answer = temp;
}
}
//遍历寻找偶数回文子串
for(int i=0;i<s.size()-1;i++)
{
if(s[i] == s[i+1])
{
int j=i-1;
int k=i+2;
temp.clear();
while(j>=0 && k<s.size())
{
if(s[j] != s[k])
{
break;
}
j--;
k++;
}
for(int l=j+1;l<k;l++)
{
temp += s[l];
}
if(temp.size() > answer.size())
{
answer = temp;
}
}
}
return answer;
}
};