二哥的 LeetCode 刷题笔记:005.最长回文子串
《二哥的 LeetCode 刷题笔记》真的容易懂。 ------------------------by鲁迅
题意
给你一个字符串 s,找到 s 中最长的回文子串。如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。
示例
输入:s = "babad"
输出:"bab"
解释:"aba" 同样是符合题意的答案。
难度
中等
分析 1
要解这道题,我们需要搞清楚几个概念:
- 什么是字符串的反序?
- 什么是回文串?
- 什么是最长回文子串?
首先,字符串的反序就是将字符串中的字符顺序颠倒过来,例如:abc的反序就是cba。
其次,回文串就是正着看和反着看是一样的字符串,例如:abcba就是一个回文串,因为反着看也是abcba。
最后,最长回文子串就是在一个字符串中,最长的回文串,例如:abcba的最长回文子串就是abcba,而示例中的babad的最长回文子串就是bab或者aba。
那搞清楚这几个概念后,我们就很容易想到暴力解法:截取每一段子串,然后判断它是不是回文串,如果是的话,就更新最长回文子串。
class Solution {
// 辅助函数,用于检查字符串 s 中从索引 begin 到 end 的子串是否为回文
boolean isPalindrome(String s, int begin, int end) {
while (begin <= end) {
// 如果两端的字符不同,则不是回文
if (s.charAt(begin) != s.charAt(end))
...
已加入星球,可直接知识星球授权登录
二哥编程星球目前包含:
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
1. 微信扫右侧的优惠券加入知识星球
2. 解锁星球的实战项目教程和源码: 项目源码+教程获取
回复