第27天。
今天的题目是Longest Palindromic Subsequence:
一道动态规划的问题,我们假定dp[i, j]
是字符串S[i:j]
最长回文串的长度。那么我们可以写出如下动规方程:
$$
dp[i, j] = \left{
\begin{aligned}
dp[i-1, j-1] + 2 & &,s[i] = s[j] \
max{d[i-1,j], dp[i, j-1]} & &,s[i] \neq s[j]
\end{aligned}
\right.
$$
有了动规方程后,这个问题就简单多了:
为了减少空间复杂度,我们可以这样优化: