首页 > 其他分享 >动态规划_最长回文子序列

动态规划_最长回文子序列

时间:2022-12-08 10:47:12浏览次数:37  
标签:longestPalindromeSubseq End 序列 leng 最长 dp 回文

Sub d53_动态规划_最长回文子序列()
    text1 = "cbbdbbbbbdddddddddddd"
    res = longestPalindromeSubseq(text1)
    Debug.Print (res)
End Sub

Private Function longestPalindromeSubseq(s)
    leng = Len(s)
    ReDim dp(leng, leng)
    For i = leng - 1 To 1 Step -1
        dp(i, i) = 1
        For j = i + 1 To leng
            If Mid(s, i, 1) = Mid(s, j, 1) Then
                dp(i, j) = dp(i + 1, j - 1) + 2
            Else
                dp(i, j) = Application.Max(dp(i + 1, j), Application.Max(dp(i, j), dp(i, j - 1)))
            End If
        Next
    Next
    longestPalindromeSubseq = dp(1, leng)
End Function

 

标签:longestPalindromeSubseq,End,序列,leng,最长,dp,回文
From: https://www.cnblogs.com/eyunkeji/p/16965408.html

相关文章

  • CVE-2015-4852 Weblogic T3 反序列化分析
    0x01前言看到很多师傅的面经里面都有提到Weblogic这一个漏洞,最近正好有一些闲暇时间,可以看一看。因为环境上总是有一些小问题,所以会在本地和云服务器切换着调试。0x0......
  • 力扣14 寻找字符串数组中最长公共前缀
    力扣14寻找字符串数组中最长公共前缀题目:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入:strs=["flower","flow",......
  • 期望dp ,序列期望问题
    链接:https://ac.nowcoder.com/acm/contest/47356/D来源:牛客网这题求要集齐全部种类的卡牌所需的期望卡包数时为什么不能用期望递推?如果设f[i]为已经获得了i张卡片的期望......
  • java安全 反序列化(一)
    介绍序列化就是把对象转换成字节流,便于保存在内存、文件、数据库中;反序列化即逆过程,由字节流还原成对象。序列化是一种对象持久化的手段,可以将对象的状态转换为字节数组,来......
  • 合并回文字符串
    题目链接:https://ac.nowcoder.com/acm/problem/13230题目描述输入两个字符串A和B,合并成一个串C,属于A和B的字符在C中顺序保持不变。如"abc"和"xyz"可以被组合成"axbycz"......
  • jquery form表单.serialize()序列化后中文乱码问题原因及解决
    有时候我们需要使用ajax提交去提交form的值,这样就需要使用serialize()去获取form的值,但这样获取的值如果有中文,会乱码,原因和解决方法如下:原因:.serialize()自动调用了encodeU......
  • 7 I/O和序列化
    HeadFirstJava和AcWingJava课程做的总结7。7.1输入&输出输入方式1,效率较低,输入规模较小时使用。(10e6分界条件)importjava.util.Scanner;publicclassMain{......
  • 424.longest-repeating-character-replacement 替换后的最长重复字符
    问题描述424.替换后的最长重复字符解题思路首先,注意一点,子串如果能通过k次替换变成只包含相同字母的子串,那么一定有max_cnt+k>=subarray.size();那么不满足条件的子......
  • 131.palindrome-partitioning 分割回文串
    问题描述131.分割回文串解题思路利用动态规划来判断字符串是否是回文串:-if(s[i]==s[j])dp[i][j]=dp[i+1][j-1];这里遍历的时候要注意i的遍历顺序;最后考......
  • 3.longest-substring-without-repeating-characters 无重复字符的最长子串
    问题描述3.无重复字符的最长子串解题思路用arr[96]记录每个字符出现的次数,如果字符次数大于1,说明已经包含了重复字符,则要更新l,否则递增r,并记录最大的子串长度。代码cl......