LeetCode-516-最长回文子序列--动规思想
最长回文子序列
给定一个字符串 s ,找到其中最长的回文子序列,并返回该序列的长度。可以假设 s 的最大长度为 1000 。
例:
输入:
"bbbab"
输出:
4
解释:一个可能的最长回文子序列为 "bbbb"。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/longest-palindromic-subsequence

Python代码
class Solution: def longestPalindromeSubseq(self, s: str) -> int: dp=[[[]for i in range(len(s))] for i in range (len(s))] for i in range(len(s)): dp[i][i]=1 for j in range(0,i): dp[i][j]=0 for j in range(1,len(s)): for i in range(j-1,-1,-1) : if(s[i]==s[j]): dp[i][j]=dp[i+1][j-1]+2 else: dp[i][j]=max(dp[i][j-1],dp[i+1][j]) return max(map(max,dp)) 作者:chong-ya-xiao-ma 链接:https://leetcode-cn.com/problems/longest-palindromic-subsequence/solution/dong-tai-gui-hua-si-xiang-by-chong-ya-xi-xxni/ 来源:力扣(LeetCode)

浙公网安备 33010602011771号