新的dp定义:不再能直接得出结果,直接设置结果为dp无明显递推关系
布尔类型的dp[i][j]:表示区间范围[i,j] (注意是左闭右闭)的子串是否是回文子串,如果是dp[i][j]为true,否则为false
递推公式 如果ij不相等 则dp[i][j] = false; 相等则看dp[i-1][j+1]以及判断j和i是否同一个数或相邻
- if (s[i] == s[j]) {
- dp[i][j] = dp[i + 1][j - 1] + 2;
- } else {
- dp[i][j] = max(dp[i + 1][j], dp[i][j - 1]);
- }
不相等取max忘记了