news 2026/3/26 16:45:40

【剑斩OFFER】算法的暴力美学——最长回文子串

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【剑斩OFFER】算法的暴力美学——最长回文子串


一、题目描述

二、算法原理

思路:中心扩展算法

我们要遍历字符串,然后固定当前字符串中遍历的字符,例如上图,每次遍历一个字符,那么先让定义两个指针指向当前字符,if : s【 left 】 == s 【 right 】 ,则:left--,right++; if:s[ left ] != s[ right ] ,跟新最长回文字符串:s.substr( left + 1,right - left - 1),然后不断的重复上面的步骤,就是,都是上图是奇数回文(最长的回文的长度是奇数),当遇到偶数回文时就不行:

最终构造出来的回文字符串:b,不符合题目要求,所以我们要遍历两次,第一次是奇数回文遍历,第二次是偶数回文遍历,总结也就是完成上面的遍历之后,不要急于固定下一个字符,我们要让:left = i,right = i + 1,判断条件跟上面的一样:

此时构造出来的字符串就是我们要的答案:bb

三、代码实现

class Solution { public: string longestPalindrome(string s) { string same;//最长回文 int count = 2;//第一次奇数回文判断,第二次偶数 for(int i = 0; i < s.size(); i++) { int left = i,right = i;//第一次从同一个下标开始 while(count >= 1) { if(left >= 0 && right < s.size() && s[left] == s[right]) { //两边扩散 left--; right++; } else { //奇数或者偶数回文查找结束,更新 same 值 if(same.size() < (right - left -1)) same = s.substr(left + 1,right - left - 1); //偶数回文判断 left = i; right = i + 1; count--; } } count = 2;//为下一次做准备 } return same; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/25 5:15:09

Poppins字体完全指南:从几何设计到多语言支持的18款字体详解

Poppins字体完全指南&#xff1a;从几何设计到多语言支持的18款字体详解 【免费下载链接】Poppins Poppins, a Devanagari Latin family for Google Fonts. 项目地址: https://gitcode.com/gh_mirrors/po/Poppins 还在为设计项目寻找一款既能满足现代审美需求&#xff…

作者头像 李华
网站建设 2026/3/25 19:19:57

ModTheSpire终极指南:快速开启杀戮尖塔模组世界

ModTheSpire终极指南&#xff1a;快速开启杀戮尖塔模组世界 【免费下载链接】ModTheSpire External mod loader for Slay The Spire 项目地址: https://gitcode.com/gh_mirrors/mo/ModTheSpire ModTheSpire是专为《杀戮尖塔》设计的外部模组加载器&#xff0c;它让玩家能…

作者头像 李华
网站建设 2026/3/25 14:42:06

QModMaster:工业通信的终极免费解决方案

QModMaster&#xff1a;工业通信的终极免费解决方案 【免费下载链接】qModbusMaster 项目地址: https://gitcode.com/gh_mirrors/qm/qModbusMaster 在工业自动化领域&#xff0c;设备间的稳定通信是系统运行的关键。QModMaster作为一款基于Qt开发的免费开源ModBus主站工…

作者头像 李华
网站建设 2026/3/25 0:05:51

专业级GPX文件在线编辑工具:从轨迹管理到高效处理

专业级GPX文件在线编辑工具&#xff1a;从轨迹管理到高效处理 【免费下载链接】gpxstudio.github.io The online GPX file editor 项目地址: https://gitcode.com/gh_mirrors/gp/gpxstudio.github.io 当户外爱好者记录完一天的徒步轨迹&#xff0c;地理工作者收集了大量…

作者头像 李华
网站建设 2026/3/25 6:11:16

UnityLive2DExtractor:Live2D资源提取工具使用指南

UnityLive2DExtractor&#xff1a;Live2D资源提取工具使用指南 【免费下载链接】UnityLive2DExtractor Unity Live2D Cubism 3 Extractor 项目地址: https://gitcode.com/gh_mirrors/un/UnityLive2DExtractor 1. 环境配置 1.1 系统要求 依赖项版本要求操作系统Windows…

作者头像 李华