1、问题
2、算法标签
- 动态规划算法
3、通过代码
动态规划算法实现代码
class Solution {
public:
string longestPalindrome(string s) {
int len=s.length();
string ans="";
vector<vector<int>> dp(len,vector<int>(len));
for(int l=0;l<len;l++){
for(int i=0;i+l<len;i++){
int j=i+l;
if(l==0){
dp[i][j]=1;
}
else if(l==1){
dp[i][j]=(s[i]==s[j]);
}
else{
dp[i][j]=(s[i]==s[j])&&(dp[i+1][j-1]);
}
if(dp[i][j]&&j-i+1>ans.length()){
ans=s.substr(i,j-i+1);
}
}
}
return ans;
}
};