!!!!!【此文章仅仅用于记录自己做题,文章毫无用处⚆_⚆】
目录
题目描述:
解题方法:动态规划
题目分析:
代码:
class Solution {
public int longestPalindromeSubseq(String s) {//动态规划
int n=s.length();
int [][]dp=new int [n][n];
for(int i=n-1;i>=0;i--)//注意i范围要等于0
{
dp[i][i]=1;//每单个字符也是一个回文序列长度1
for(int j=i+1;j<n;j++)
{
if(s.charAt(i)==s.charAt(j))
{
dp[i][j]=dp[i+1][j-1]+2;
}
else
{
dp[i][j]=Math.max(dp[i+1][j],dp[i][j-1]);
}
}
}
return dp[0][n-1];
}
}