代码随想录训练营Day57动态规划Part17|647.回文子串|516.最长回文子序

Part17

647.回文子串

  • 虽然花了很多时间,但是自己写出来了
  • 定义dp[i][j]为布尔类型,记录起始位置为i,终止位置为j的字符串是否为回文子串
  • 起始、终止位置字符串不同则FALSE;若相同,有三种情况:1- i==j,true;2- i-j==1,true;3- 其他时候靠dp[i+1][j-1]判断
  • 要注意遍历顺序和dp数组中i、j的定义

516.最长回文子序

  • 主干和上题不一样,上一题是子串,要连续的;本题是子序,可以不连续,只要相对顺序不变就行
  • 但是递推思路很相似,一样画二维dp数组推导,可以用dp值累加

你可能感兴趣的:(动态规划,算法)