【算法Hot100系列】最长回文子串

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术点,如集合,jvm,并发编程 redis,kafka,Spring,微服务,Netty 等
    • 常用开发工具系列:罗列常用的开发工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

一.题目描述

1.题目信息

给你一个字符串 s,找到 s 中最长的回文子串。

如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。

2.题目地址

地址信息

3.测试示例

示例 1:

复制代码
输入:s = "babad"
输出:"bab"
解释:"aba" 同样是符合题意的答案。

示例 2:

复制代码
输入:s = "cbbd"
输出:"bb"

4.提示信息

提示:

  • 1 <= s.length <= 1000
  • s 仅由数字和英文字母组成

二.题解

1.解题方案

java 复制代码
public String longestPalindrome(String s) {
    final char[] chars = s.toCharArray();
    int begin = 0;
    int max = 1;
    //双循环
    for (int i = 0; i < chars.length; i++) {
        for (int j = i + 1; j < chars.length; j++) {
            if (j - i + 1 > max && is(chars, i, j)) {
                max = j - i + 1;
                begin = i;
            }
        }
    }
    return s.substring(begin, begin + max);
}

private boolean is(char[] chars, int left, int right) {
    while (left < right) {
        if (chars[left] != chars[right]) {
            return false;
        }
        left++;
        right--;
    }
    return true;
}

2.解题思路

  1. 从每一个位置触发都有可能是最大值,所以双循环
  2. 回文串的基本写法
  3. 更新最大值和起始值的条件
  4. 更新最大值和起始值
  5. 获取所求的字符串,使用字符串截取方法

3.注意事项

  • 什么条件下需要更新 max 的值呢
  • 判断回文串的基本写法

三.自我分析

1.解题思路

apl 复制代码
if 有思路
    开写
else
    去看相关标签,确定具体解题方法
    if 有思路
        开写
    else
        看提示信息
        if 有思路
            开写
        else
            看答案

2.思考链路

  • 没有思路
  • 多做,多思考
  • 形成自己的肌肉记忆
  • 多多调试
  • 多总结
  • 多回头看看以前的题目,温故而知新

觉得有用的话点个赞 👍🏻 呗。

❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

相关推荐
私人珍藏库2 天前
WiFi密码B破器-密码查看器、可跑字典-免费无广
windows·wifi·工具
johnny2336 天前
远程桌面工具汇总:RustDesk、1Remote、CrossDesk
工具
私人珍藏库6 天前
[Windows] 漫画翻译工具Saber Translator2.5.1
windows·动画·工具·翻译
xixixi777776 天前
了解一个开源网络数据采集软件包——Libcap
网络·安全·工具
KG_LLM图谱增强大模型7 天前
[Nature子刊]浙大SciToolAgent:用知识图谱驱动的科学智能体实现多工具集成
大模型·知识图谱·工具·科学研究·graphrag
私人珍藏库10 天前
小叮当W信助手v0.1.0
pc·工具·软件
br456vv18 天前
Adobe Dimension 2025 (3D可视化设计神器) 解锁版
java·adobe·工具
NFG89C19 天前
Adobe Lightroom Classic 2025解锁版 (专业照片管理)
java·adobe·工具
bb456b19 天前
Snipaste (截图贴图工具) 精准截图 中文免费版
java·工具·贴图
bin915319 天前
AI工具赋能Python开发者:项目开发中的创意守护与效率革命
开发语言·人工智能·python·工具·ai工具