当前位置: 首页 > news >正文

代码随想录训练营第46天|回文子序列

647. 回文子串

class Solution {
public:int count=0;void check(string& s, int left, int right){while(left>=0&&right<s.length()&&s[left]==s[right]){count++;left--;right++;}}int countSubstrings(string s) {for(int i=0; i<s.length(); i++){check(s,i,i);check(s,i,i+1);}return count;}
};

贪心解法,由中心向两边扩散,直至不相等,得到最大回文串。

遍历所有可能的中心,累计扩散过程所有的子串。

516. 最长回文子序列

class Solution {
public:int longestCommonSubsequence(string text1, string text2) {text1.insert(text1.begin(),' ');text2.insert(text2.begin(),' ');int n1=text1.length(), n2=text2.length(), max_len=0;vector<vector<int>> dp(n1,vector<int>(n2,0));for(int i=1; i<n1; i++){for(int j=1; j<n2; j++){if(text1[i]==text2[j])dp[i][j]=dp[i-1][j-1]+1;elsedp[i][j]=max(dp[i-1][j],dp[i][j-1]);max_len=max(max_len,dp[i][j]);}}return max_len;}int longestPalindromeSubseq(string s) {string r(s.rbegin(), s.rend());return longestCommonSubsequence(s,r);}
};

利用最长子序列解决回文子序列问题。

相关文章:

代码随想录训练营第46天|回文子序列

647. 回文子串 class Solution { public:int count0;void check(string& s, int left, int right){while(left>0&&right<s.length()&&s[left]s[right]){count;left--;right;}}int countSubstrings(string s) {for(int i0; i<s.length(); i){chec…...

使用 PowerShell 命令更改 RDP 远程桌面端口(无需修改防火墙设置)

节选自原文&#xff1a;Windows远程桌面一站式指南 | BOBO Blog 原文目录 什么是RDP&#xfffc;开启远程桌面 检查系统版本启用远程桌面连接Windows 在Windows电脑上在MAC电脑上在Android或iOS移动设备上主机名连接 自定义电脑名通过主机名远程桌面使用Hosts文件自定义远程主…...

bilibili实现批量发送弹幕功能

代码如下&#xff1a; import random import time import requests from tkinter import *# 弹幕内容列表 # lis_text [ # 京口瓜洲一水间&#xff0c;钟山只隔数重山。,君不见黄河之水天上来&#xff0c;奔流到海不复回。,起舞弄清影&#xff0c;何似在人间! # ] lis_te…...

如何查看上网记录及上网时间?5种按步操作的方法分享!【小白也能学会!】

“知己知彼&#xff0c;百战不殆”&#xff0c;在数字时代&#xff0c;了解自己的上网行为和时长&#xff0c;不仅能帮助我们更好地管理时间&#xff0c;还能提升工作效率和生活质量。 今天&#xff0c;我们就来分享五种简单易懂的方法&#xff0c;即便是网络小白也能轻松学会…...

Nisshinbo日清纺pvs1114太阳模拟器手测

Nisshinbo日清纺pvs1114太阳模拟器手测...

多线程复杂系统调试利器——assert()

调试复杂系统时&#xff0c;最大的难点在于定位问题&#xff0c;如果弄清楚了问题产生的机理&#xff0c;那么就能有针对性的进行解决。 调试复杂系统时&#xff0c;遇到不好定位的问题&#xff0c;就要大胆去猜、去怀疑、去假设&#xff0c;尤其是应该重点怀疑多线程访问&…...

【2024.9.28练习】青蛙的约会

题目描述 题目分析 由于两只青蛙都在跳跃导致变量多&#xff0c;不妨采用物理题中的相对运动思想&#xff0c;设青蛙A不动&#xff0c;青蛙B每次跳米&#xff0c;两只青蛙的距离为米。正常来说&#xff0c;只要模拟青蛙B与青蛙A的相对运动过程&#xff0c;最终当青蛙B与青蛙A距…...

Python入门:类的异步资源管理与回收( __del__ 方法中如何调用异步函数)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 使用上下文管理器📝 使用 `__del__` 方法📝 结合使用上下文管理器与 `__del__`📝 资源回收的重要性⚓️ 相关链接 ⚓️📖 介绍 📖 在编程中,资源的管理和回收至关重要,尤其是在处理网络请求时。频…...

Android开发中的ViewModel

在Android应用开发中&#xff0c;ViewModel作为架构组件之一&#xff0c;扮演着管理UI数据和生命周期的关键角色。本文将深入探讨ViewModel如何感知View的生命周期&#xff0c;并分析其内核原理&#xff0c;帮助开发者更好地利用ViewModel优化应用架构。 一、ViewModel简介 在…...

Vue 3 文件编译流程详解与 Babel 的使用

文章目录 一、背景二、结论三、vitejs/plugin-vue 插件调试前物料准备vuePlugin 入口buildStart 方法transform 方法 四、vue/compiler-sfc 核心包parse 方法compileScript、rewriteDefault 方法compileTemplate 方法 五、整体架构六、总结参考资料 一、背景 最近正在研究 rea…...

Android常用C++特性之std::chrono

声明&#xff1a;本文内容生成自ChatGPT&#xff0c;目的是为方便大家了解学习作为引用到作者的其他文章中。 std::chrono 是 C11 引入的标准库中的时间处理工具&#xff0c;提供了以多种精度进行时间测量、处理和操作的功能。它允许开发者处理时间点&#xff08;time_point&am…...

[Oracle] ORA-04036: 实例使用的 PGA 内存超出 PGA_AGGREGATE_LIMIT

有说该问题是因为触发了Oracle的BUG导致&#xff0c;最直接的解决方法就是重启数据库实例&#xff1b; Linux下数据库实例重启...

一次 Spring 扫描 @Component 注解修饰的类坑

问题现象 之前遇到过一个问题&#xff0c;在一个微服务的目录下有相同功能 jar 包的两个不同的版本&#xff0c;其中一个版本里面的类有 Component 注解&#xff0c;另外一个版本的类里面没有 Component 注解&#xff0c;且按照加载的顺序&#xff0c;没有 Component 注解的 j…...

深度学习:调整学习率

目录 前言 一、什么是调整学习率&#xff1f; 二、调整学习率的作用 三、怎么调整学习率 1.有序调整 2.自适应调整 3.自定义调整 4.调整示例 前言 在深度学习中&#xff0c;调整学习率是非常重要的&#xff0c;它对模型的训练效果和收敛速度有显著影响。 一、什么是调整…...

Java项目实战II基于Java+Spring Boot+MySQL的厨艺交流平台设计与实现(源码+数据库+文档)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 在美食文化…...

第二十节:学习Redis缓存数据库实现增删改查(自学Spring boot 3.x的第五天)

这节记录下如何使用redis缓存数据库。 第一步&#xff1a; 先在服务器端安装redis&#xff0c; 下载地址&#xff1a;Releases tporadowski/redis GitHub。 第二步&#xff1a; 安装redis客户端可视化管理软件redisDesktopmanager Redis Desktop Manager - Download 第…...

Android SQLite的基本使用、生成Excel文件保存到本地

1. Android SQLite的基本使用 1.1. SQLiteOpenHelper Android 底层已经通过一个SQLiteOpenHelper的抽象类将数据库的创建&#xff0c;以及修改&#xff0c;更新等都放在了里面。 要使用它必须实现它的OnCreate(SQLiteDatabase db)&#xff0c;onUpgrade(SQLiteDatabase db, int…...

记一次因视频编码无法在浏览器播放、编码视频报错问题

起因 ... f cv2.VideoWriter_fourcc(*h264) ...我这边使用h264编码会提示 OpenCV: FFMPEG: tag 0x34363268/h264 is not supported with codec id 27 and format mp4 / MP4 (MPEG-4 Part 14) OpenCV: FFMPEG: fallback to use tag 0x31637661/avc1 [ERROR:02.711] global /i…...

【深度学习】深度卷积神经网络(AlexNet)

在 LeNet 提出后&#xff0c;卷积神经网络在计算机视觉和机器学习领域中很有名气&#xff0c;但并未起到主导作用。 这是因为 LeNet 在更大、更真实的数据集上训练的性能和可行性还有待研究。 事实上&#xff0c;在 20 世纪 90 年代到 2012 年之间的大部分时间里&#xff0c;…...

C语言扫盲

文章目录 C版本C语言特征GCCprintf数据类型函数指针内存管理void指针 Struct结构和Union结构typedef预处理器make工具cmake工具Projectintegral of sinc functionemulator embedded systeman event schedule 补充在线Linux终端安装Linux参考 建议还是国外教材学习…人家的PPT比…...

去人类中心化研究引擎:AI如何突破学科壁垒驱动科研创新

1. 项目概述&#xff1a;一个“去人类中心化”的研究引擎最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“De-Anthropocentric-Research-Engine”&#xff0c;直译过来就是“去人类中心化研究引擎”。第一眼看到这个标题&#xff0c;你可能和我一样&#xff0c;脑子里会冒…...

Arm Cortex-A78处理器仿真技术与Iris架构实践

1. Arm Cortex-A78AE/A78C处理器仿真技术解析在半导体设计领域&#xff0c;处理器仿真技术已经成为芯片开发流程中不可或缺的关键环节。作为Armv8.2-A架构的代表性产品&#xff0c;Cortex-A78AE和A78C处理器采用了创新的Iris组件体系进行建模&#xff0c;这种基于指令集架构(IS…...

智能语义分块:chunkhound如何解决RAG应用中的文档处理难题

1. 项目概述&#xff1a;从“分块”到“猎犬”的智能进化如果你在数据处理的深海里游过泳&#xff0c;尤其是处理过那些动辄几十上百GB的文本、代码或日志文件&#xff0c;那你一定对“分块”&#xff08;Chunking&#xff09;这个概念又爱又恨。爱的是&#xff0c;它是我们处理…...

从零到一:Ubuntu Server上构建生产级Slurm计算集群

1. 环境准备与系统配置 在开始构建Slurm集群之前&#xff0c;我们需要确保所有节点都处于干净、一致的初始状态。我建议使用Ubuntu Server 22.04 LTS版本&#xff0c;这个长期支持版本经过充分测试&#xff0c;稳定性有保障。实际部署中发现&#xff0c;不同Linux发行版间的软件…...

2026 最新 6 款漏洞扫描工具!一篇全覆盖

渗透测试收集信息完成后&#xff0c;就要根据所收集的信息&#xff0c;扫描目标站点可能存在的漏洞了&#xff0c;包括我们之前提到过的如&#xff1a;SQL注入漏洞、跨站脚本漏洞、文件上传漏洞、文件包含漏洞及命令执行漏洞等&#xff0c;通过这些已知的漏洞&#xff0c;来寻找…...

2025最权威的十大降AI率工具推荐

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 人工智能生成内容工具广泛应用这件事引出了技术反思&#xff0c;此类工具能高效产出文本图像…...

Win10 任务管理器点击“详细信息”崩溃 + U盘 PPTX 无法删除/复制(0x800700EA)问题排查

一、问题现象 最近遇到一个比较奇怪的问题&#xff1a; Win10 系统 任务管理器只能以“小窗口模式”打开 点击“详细信息”后直接崩溃 事件查看器报错&#xff1a; 错误应用程序名称: taskmgr.exe 版本: 10.0.19041.6280同时还伴随另一个问题&#xff1a; U盘中的 .pptx …...

保姆级教程:用Docker部署Jenkins时,如何搞定Agent节点的50000端口映射(附避坑点)

深度解析Docker化Jenkins部署&#xff1a;50000端口映射全攻略与实战避坑指南 Jenkins作为持续集成领域的标杆工具&#xff0c;其容器化部署已成为现代DevOps实践的标配。但当Master节点运行在Docker环境中时&#xff0c;Agent节点连接失败的场景屡见不鲜——其中80%的问题根源…...

人类不擅长做出复杂的决策。人工智能可以指出这些错误。

图片来源&#xff1a;图片由编辑团队使用人工智能生成&#xff0c;仅供参考。来源&#xff1a;https://techxplore.com/news/2026-05-humans-bad-complex-decisions-ai.html当罗列优缺点不足以解决问题时&#xff0c;康奈尔大学研究人员开发的一种新型决策工具可以利用人工智能…...

四步法快速诊断与修复AKShare金融数据接口的数据异常问题

四步法快速诊断与修复AKShare金融数据接口的数据异常问题 【免费下载链接】aktools AKTools is an elegant and simple HTTP API library for AKShare, built for AKSharers! 项目地址: https://gitcode.com/gh_mirrors/ak/aktools 作为量化投资领域的重要工具&#xff…...