思路:

动态规划

dp数组:dp【i】【j】表示s【i:j】最长回文子串长度

出口:
●i j相同,   dp[i][j]  都为1

●j=i+1,如果  s[j]=s[i]  dp[i][j]=2,  否则为 1

状态转移方程

s[i] = s[j]  ,dp【i】【j】=dp【i+1】【j-1】+2

s[i]! = s[j] ,dp【i】【j】=max(dp【i+1】【j】,dp【i】【j-1】)

代码:

class Solution {
public:int longestPalindromeSubseq(string s) {vector<vector<int>> dp(s.size(), vector<int>(s.size(), 0));for (int i = s.size() - 1; i >= 0; i--) {for (int j = i; j < s.size(); j++) {if (s[i] == s[j]) {if(j==i)dp[i][j]=1;elsedp[i][j] = dp[i + 1][j - 1] + 2;} else {dp[i][j] = max(dp[i + 1][j], dp[i][j - 1]);}}}return dp[0][s.size() - 1];}
};

LeetCode 516 最长回文子串相关推荐

  1. LeetCode 5. 最长回文子串(动态规划)

    文章目录 1. 题目 2. 解题 2.1 自己写的DP 2.2 优化后的DP 2.3 中心扩展法 1. 题目 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. ...

  2. LeetCode 516. 最长回文子序列(动态规划)

    1. 题目 给定一个字符串s,找到其中最长的回文子序列.可以假设s的最大长度为1000. 示例 1: 输入: "bbbab" 输出: 4 一个可能的最长回文子序列为 "b ...

  3. [动态规划|字符串] leetcode 5 最长回文子串

    [动态规划|字符串] leetcode 5 最长回文子串 1.题目 题目链接 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例1: 输入: "b ...

  4. leetcode - 516. 最长回文子序列

    516. 最长回文子序列 -------------------------------------------- 给定一个字符串s,找到其中最长的回文子序列.可以假设s的最大长度为1000. 示例 ...

  5. 20200118:(leetcode)最长回文子串(中心扩展算法详解及思考)

    最长回文子串(中心扩展算法详解及思考) 题目 中心扩展算法详解 代码实现 题目 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: " ...

  6. 20200117:(leetcode)最长回文子串(暴力法)

    最长回文子串 题目 基本思路 代码实现 题目 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: "babad" 输出: ...

  7. leetcode 5. 最长回文子串 暴力法、中心扩展算法、动态规划,马拉车算法(Manacher Algorithm)

    给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000.示例 1: 输入: "babad" 输出: "bab" 注意: &quo ...

  8. leetcode - 5. 最长回文子串

    给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 解题思路: 对于一个字符串,回文子串存在两种情况,第一种情况是???a???的回文子串,第二种情况是???aa ...

  9. leetcode题解5-最长回文子串

    问题描述 给你一个字符串 s,找到 s 中最长的回文子串. 示例 1: 输入:s = "babad" 输出:"bab" 解释:"aba" 同 ...

最新文章

  1. [转]将图片转换为 latex 公式
  2. pythonjson数据提取_python爬虫学习笔记(十)-数据提取之JsonPath的使用
  3. C语言爆炸干货,小白你还不来看看嘛!
  4. JS高级程序设计笔记——事件(一)
  5. mysql分段统计ceil
  6. Linux字体最好看的发行版,如何给任意一款 Linux 发行版添加漂亮的字体
  7. vmp给驱动加壳的注意事项
  8. my security / csdn / 2000w / chakaifang.info
  9. 10年测试经验的性能测试工程师简历模板你见过吗?
  10. uni-app开发之编辑器HBuilderX(一)
  11. 你的奋斗也许只是一个屁
  12. F28335的DSP中主频的配置
  13. 简单案例:注册登录功能实现
  14. icectf修复图片解答
  15. 证伪主义 | A Little Sight of Falsification
  16. Linux安装MariaDB10.4
  17. Java EE入门教程系列第三章JavaBean(二)——JavaBean在JSP中的应用
  18. 浪潮服务器上RAID配置实战及RAID相关知识
  19. 三星java安装_三星F488E的JAVA安装方法
  20. 反病毒三大国际权威认证介绍

热门文章

  1. HDU4841 圆桌问题【约瑟夫环+模拟+STL】
  2. 计蒜客网站 ACM-ICPC亚洲区赛题
  3. Project Euler Problem 27 Quadratic primes
  4. Frequentist 观点和 Bayesian 观点
  5. 深度学习实践指南(五)—— 求解异或问题
  6. “表达式必须包含 bool 类型(或可转换为 bool)”
  7. Python 中的浮点数
  8. hash function/ hash table 背后的数学基础(二)
  9. C++基础::为什么不能cout一个string?
  10. java负数用什么类型定义_(转) Java中的负数及基本类型的转型详解