动态规划练习六(回文串问题)

devtools/2025/1/21 11:25:14/

一、解题心得

遇到回文串问题,一个最基本的思路就是要先知道区间 [i, j] 的字符串是不是回文串这非常非常重要!!!后面我们慢慢体会。

所以首要任务是怎么求得 [i, j] 区间的回文信息,这里会用一道例题解决这个问题。

647. 回文子串 - 力扣(LeetCode)  

注释很清楚,不解释。

二、例题

一、最长回文子串

5. 最长回文子串 - 力扣(LeetCode)

利用回文 dp 表双层 for 循环遍历,遇到 true 更新长度。

二、分割回文串(三次分割)

1745. 分割回文串 IV - 力扣(LeetCode)

利用回文 dp 表双指针分成三个部分判断是否都是 true

三、分割回文串(多次分割)

132. 分割回文串 II - 力扣(LeetCode)

四、最长回文子序列

516. 最长回文子序列 - 力扣(LeetCode)

不同于上面题目,还有一种更新 dp[i][j] 的办法就是考虑 [i, j - 1] 和 [i + 1, j]

五、成为回文字符串的最少改变次数

1312. 让字符串成为回文串的最少插入次数 - 力扣(LeetCode)


http://www.ppmy.cn/devtools/152336.html

相关文章

以太网实战AD采集上传上位机——FPGA学习笔记27

一、设计目标 使用FPGA实现AD模块驱动采集模拟电压,通过以太网上传到电脑上位机。 二、框架设计 数据位宽转换模块(ad_10bit_to_16bit):为了方便数据传输,数据位宽转换模块实现了将十位的 AD 数据转换成十六位&#…

【Linux】打破Linux神秘的面纱

个人主页~ 在开始学习的时候我们一定会对Linux产生抵触心理,我也是这样的,通过一点一点的学习,到初步会使用阶段,我们就可以打破这种心理,开始逐渐掌握,所以我们这篇文章将在一个宏观的角度上看待Linux&…

AI刷题-病毒在封闭空间中的传播时间

目录 问题描述 输入格式 输出格式 解题思路: 问题理解 数据结构选择 算法步骤 代码实现: 1.初始化: 2.设置边界条件: 3.判断 4.更新: 5.返回 最终的实现代码如下: 运行结果: …

vmware17.5 - 解决ubuntu长按按键会导致图形界面卡死的情况

在vmware上安装的ubuntu一直存在一个问题,长按按键会导致ubuntu图形界面卡死,不能自己恢复,只能关机重启,而且每次都能复现。搞得每次敲代码,动不动就卡死,重启后说不定还会丢代码,真服了。 以…

< OS 有关 > 阿里云:轻量应用服务器 的使用 安装 Tailscale 后DNS 出错, 修复并替换 apt 数据源

VPS 配置 主机:vCPU x2, 512MB, 20GB位置:阿里云,日本.东京OS: ubuntu24.20 原因: 这篇是操作过程的记录文章。 2 个月前, 在阿里云买了台 vps 。当时本想放到韩国,因为它离北京近。 但最便…

BERT和Transformer模型有什么区别

BERT(Bidirectional Encoder Representations from Transformers)和Transformer都是自然语言处理(NLP)领域的重要模型,它们之间的区别主要体现在以下几个方面: 模型定位 Transformer:严格来说并…

Node进行版本切换,如何使用 nvm 轻松切换 node 版本

有时候我们需要启动各种版本的项目,但是每个项目需要使用不同的 node 版本才能正常运行。所以我们需要随时切换 node 版本来启动项目,故我们需要使用到 nvm。 nvm 可以 轻松控制 Node版本切换。 查看已安装的Node版本nvm list切换Node版本(以12.22.12版…

#CSS 实用属性总结

文章目录 防脱发神器颜色的 Alpha 通道尺寸的百分比最大最小宽高伪类选择器contenteditable 属性table 元素CSS中的大小/长度单位绝对单位相对单位与字体大小相关与视窗大小相关百分比单位动态计算单位 时间单位角度单位分辨率单位使用建议 防脱发神器 为了更直观地控制元素尺…