【LeetCode】5-最长回文子串
欢迎来到李耶的频道【LeetCode面试题】。最长回文子串题目给你一个字符串s找到s中最长的回文子串。输入s babad 输出bab 解释aba 也是一个有效答案输入s cbbd 输出bb解法一中心扩展法思路回文串的中心可以是一个字符奇数长度或两个字符偶数长度。遍历每个可能的中心向两端扩展记录最长的回文子串。functionlongestPalindrome(s){if(!s||s.length2)returns;letstart0;letmaxLen1;functionexpandAroundCenter(left,right){while(left0rights.lengths[left]s[right]){constcurLenright-left1;if(curLenmaxLen){maxLencurLen;startleft;}left--;right;}}for(leti0;is.length;i){expandAroundCenter(i,i);// 奇数长度如 abaexpandAroundCenter(i,i1);// 偶数长度如 abba}returns.substring(start,startmaxLen);}时间复杂度 / 空间复杂度O(n²) / O(1)优势实现简单空间效率高是面试中最推荐的手写解法解法二动态规划思路用dp[i][j]表示子串s[i..j]是否为回文串。状态转移dp[i][j] (s[i] s[j] dp[i1][j-1])从短子串向长子串递推。functionlongestPalindrome(s){if(!s||s.length2)returns;constns.length;constdpArray.from({length:n},()Array(n).fill(false));letstart0;letmaxLen1;// 所有长度为 1 的子串都是回文for(leti0;in;i){dp[i][i]true;}// 按长度枚举for(letlen2;lenn;len){for(leti0;in-len;i){constjilen-1;if(s[i]s[j]){if(len2||dp[i1][j-1]){dp[i][j]true;if(lenmaxLen){maxLenlen;starti;}}}}}returns.substring(start,startmaxLen);}时间复杂度 / 空间复杂度O(n²) / O(n²)优势思路清晰易于理解递推关系适合初学者劣势空间复杂度较高大字符串下不优解法对比解法时间 / 空间复杂度优势推荐指数中心扩展法O(n²) / O(1)空间最优实现简单⭐⭐⭐⭐⭐动态规划O(n²) / O(n²)思想经典易于理解⭐⭐⭐扩展题最长回文子序列给定一个字符串s找到其中最长的回文子序列并返回该序列的长度。子序列不要求连续回文子串给定一个字符串统计其中回文子串的数量。最短回文串给定一个字符串s通过在前面添加字符将其转换为回文串返回最短的回文串。“大道至简实干为要。” —— 《荀子》关注李耶每天一道面试题一起卷起来

相关新闻

暗黑破坏神2存档编辑器d2s-editor:可视化存档修改的终极解决方案

暗黑破坏神2存档编辑器d2s-editor:可视化存档修改的终极解决方案

暗黑破坏神2存档编辑器d2s-editor:可视化存档修改的终极解决方案 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 还在为暗黑破坏神2存档修改的复杂操作而烦恼吗?d2s-editor为你带来了革命性的解决方案&am…

2026/7/30 2:19:06阅读更多 →
医用级PVC颗粒生产合规及市场拓展策略深度解析

医用级PVC颗粒生产合规及市场拓展策略深度解析

【医用级PVC颗粒】采购高频FAQ大全:避坑选型售后全解答 本文汇总了工业采购医用级PVC颗粒时的全流程高频问答,覆盖避坑、选型、资质、售后、性能验证全场景,所有答案均符合医疗器械原材料相关国家规范,宁波翌凯科技有限公司提供全…

2026/7/30 2:19:06阅读更多 →
深入解析C++ new与delete:从内存管理原理到现代智能指针实践

深入解析C++ new与delete:从内存管理原理到现代智能指针实践

1. 项目概述:为什么我们需要重新审视 new 和 delete?在C的世界里,new和delete这对操作符就像空气和水一样基础,几乎每个写过C程序的人都会用到。但正因为太基础,很多人反而对它们一知半解,停留在“new就是申…

2026/7/30 2:19:06阅读更多 →
2026景区管理系统怎么选型?从技术参数到方案配置的完整解析

2026景区管理系统怎么选型?从技术参数到方案配置的完整解析

2026景区管理系统怎么选型?从技术参数到方案配置的完整解析——四大技术维度的选型指南与指标解读引言景区综合管理系统涉及通道闸机机械工程、人脸识别算法、分布式系统架构、物联网感知层等多个技术领域。采购方在选型时面对的不仅是品牌和价格,更是大…

2026/7/30 6:00:00阅读更多 →
二维差分矩阵:从原理到C++实现,高效处理矩阵区间更新

二维差分矩阵:从原理到C++实现,高效处理矩阵区间更新

1. 项目概述:为什么我们需要差分矩阵? 在算法竞赛和日常开发中,我们经常会遇到一类问题:需要对一个二维矩阵(或者说二维数组)的某个子矩阵区域内的所有元素,进行频繁的“批量加减”操作。比如&a…

2026/7/30 6:00:00阅读更多 →
加密货币中的客户地址尽职调查:链上CDD详解

加密货币中的客户地址尽职调查:链上CDD详解

合规官员通过经验证的政府颁发身份证件完成客户入职。三周后,该客户的钱包从一个新添加至制裁名单的地址收到了资金。入职文件是干净的,但钱包并非如此。这正是加密货币领域客户地址尽职调查所要弥合的缺口。 传统客户尽职调查(CDD&#xff…

2026/7/30 6:00:00阅读更多 →
利用大语言模型优化期货交易决策的Python实践

利用大语言模型优化期货交易决策的Python实践

1. 项目背景与核心价值期货交易市场瞬息万变,交易时机的判断直接影响投资收益。传统技术分析方法需要人工设定复杂规则,而大语言模型(LLM)的推理能力可以模拟专业交易员的决策逻辑。这个Python项目展示了如何利用大模型实时分析市…

2026/7/30 6:00:00阅读更多 →
C++入门指南:从Hello World到基础语法与环境配置详解

C++入门指南:从Hello World到基础语法与环境配置详解

1. 从“Hello, World!”到理解C的编程范式很多朋友第一次接触C&#xff0c;可能都是从一行简单的cout << “Hello, World!”;开始的。这行代码就像一个仪式&#xff0c;宣告你正式踏入了系统级编程的世界。但C的魅力远不止于此&#xff0c;它不像一些脚本语言那样“开箱即…

2026/7/30 6:00:00阅读更多 →
终极解决方案:3分钟让你的魔兽争霸III在现代系统上焕然新生

终极解决方案:3分钟让你的魔兽争霸III在现代系统上焕然新生

终极解决方案&#xff1a;3分钟让你的魔兽争霸III在现代系统上焕然新生 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 你是否还在为魔兽争霸III在现代…

2026/7/30 5:58:00阅读更多 →
覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

&#x1f539; 工具基础介绍 OpenClaw 是开源生态中一款实用性较强的本地智能工具&#xff0c;凭借本地离线运行、可视化图形操作和任务自动化三大核心特性&#xff0c;赢得了众多用户的青睐。与普通在线对话AI工具不同&#xff0c;它属于能够直接操控本机软硬件的智能数字员工…

2026/7/29 9:47:45阅读更多 →
伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

所谓液压伺服阀体的精密激光焊接&#xff0c;是用激光束对阀座壳体&#xff08;通常为不锈钢或铝合金&#xff09;进行密封焊接&#xff0c;使阀体在21-35MPa的高压液压油或压缩气体中长期运行而不发生介质泄漏。液压伺服阀是高端液压系统的"大脑"。从航空航天飞行控…

2026/7/29 7:00:19阅读更多 →
D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX&#xff1a;三步实现《暗黑破坏神2》高清宽屏体验的终极指南 【免费下载链接】d2dx D2DX is a complete solution to make Diablo II run well on modern PCs, with high fps and better resolutions. 项目地址: https://gitcode.com/gh_mirrors/d2/d2dx 你是否还在…

2026/7/29 7:58:51阅读更多 →
3分钟解锁iOS应用自由:TrollInstallerX让你的iPhone摆脱安装限制 [特殊字符]

3分钟解锁iOS应用自由:TrollInstallerX让你的iPhone摆脱安装限制 [特殊字符]

3分钟解锁iOS应用自由&#xff1a;TrollInstallerX让你的iPhone摆脱安装限制 &#x1f680; 【免费下载链接】TrollInstallerX A TrollStore installer for iOS 14.0 - 16.6.1 项目地址: https://gitcode.com/gh_mirrors/tr/TrollInstallerX 你是否曾经因为iOS系统的严格…

2026/7/30 0:00:58阅读更多 →
[GESP202606 四级] 扫雷

[GESP202606 四级] 扫雷

B4557 [GESP202606 四级] 扫雷 https://www.luogu.com.cn/problem/B4557 中国计算机学会&#xff08;CCF&#xff09;2026年6月C四级讲解——扫雷 https://www.bilibili.com/video/BV1MCMg6AEXR/ B4557 [GESP202606 四级] 扫雷 https://www.bilibili.com/video/BV1ZKTj6ZEVh/ 2…

2026/7/30 0:00:58阅读更多 →
Windows驱动存储终极清理工具:DriverStoreExplorer完全指南

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南

Windows驱动存储终极清理工具&#xff1a;DriverStoreExplorer完全指南 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 您是否曾因Windows系统盘空间不足而烦恼&#xff1f;是否遇到过设…

2026/7/30 0:00:58阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时&#xff0c;发现推理速度只有可怜的 1-2 FPS&#xff0c;而别人的演示视频却能跑到 30 FPS 以上&#xff0c;那么问题很可能不在模型本身&#xff0c;而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后&#xff0c;会直接使用官方示例…

2026/7/30 0:27:26阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一&#xff1a;为什么你需要了解 Coze 和 Dify&#xff1f;如果你对 AI 应用开发感兴趣&#xff0c;但一看到“大模型”、“智能体”、“工作流”这些词就头疼&#xff0c;觉得门槛太高&#xff0c;那这篇文章就是为你准备的。很多开发者&#xff0c;包括我自己&#…

2026/7/30 4:47:18阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会&#xff1a;配图一直是个让人头疼的问题。2026年&#xff0c;AI生图工具已经非常成熟了&#xff0c;但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1&#xff1a;速度之王2026年6月11日&#xff0c…

2026/7/29 14:26:42阅读更多 →