LeetCode-Longest Palindromic Substring

5. 最长镜像子串 [leetcode 5: Longest Palindromic Substring] 5. 最长镜像子串 [leetcode 5: Longest Palindromic Substring] 原题链接 https://leetcode.com/problems/longest-palindromic-substring 老王的解法链接 https://github.com/simplemain/leetcode/blob/master/5/analysis.md 难度 ★★☆☆☆... 阅读详情

问题描述:

Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring. (找字符串中的最长回文)

原题地址:https://leetcode.com/problems/longest-palindromic-substring/


本题通过动态规划来解决。分两种情况,第一种情况为从一个字符开始往外扩展判断最长的回文,第二种情况为从两个相邻的字符开始往外扩展判断最长的回文。从中心扩展通过一个单独的函数expanAroundCenter来实现。该算法时间复杂度为O(n^2)。


class Solution {
public:
    string longestPalindrome(string s) {
       int n = s.length();
       if (n == 0) return "";
       // a single char itself is a palindrome
       string longest = s.substr(0, 1);  
       for (int i = 0; i < n-1; i++) {
            //以一个字符为中心扩散
            string p1 = expandAroundCenter(s, i, i);  
            if (p1.length() > longest.length())
            longest = p1;
            //以相邻的两个字符为中心往外扩散
            string p2 = expandAroundCenter(s, i, i+1);  
            if (p2.length() > longest.length())
            longest = p2; 
       }
        return longest;  
    }
    //从中心开始判断是否为回文
   string expandAroundCenter(string s, int c1, int c2) {  
     int l = c1, r = c2;
     int n = s.length();
     while (l >= 0 && r <= n-1 && s[l] == s[r]) {
        l--;
        r++; 
     }
      return s.substr(l+1, r-l-1);
   }
};



开源项目 ruoyi-sso-oauth2(一)环境配置 Ruoyi若依实现单点登录SSO、oauth2认证 阅读详情

相关推荐

Windows系统的Mamba环境配置详细教程(状态空间模型)

causal_conv1d也是安装mamba的依赖必须库。安装完成后,通过pip list可以查看到安装的库。Triton是安装mamba的依赖,需要先安装。上述工作准备好后,按下面步骤安装。直接根据离线文件安装即可。是自己的虚拟环境名字。

2301_77831163的博客 3676

LeetCode Longest Palindromic Substring

找到一个字符串的最长回文子字符串,该字符串长度不超过1000,且只有唯一一个最长回文子串。

DRFish 685

雨流计数法的matlab实现,采用三点法与四点法

介绍雨流计数法是20世纪50年代由英国的两位工程师M.Matsuishi和T.Endo提出来的。该计数法的主要功能是把实测载荷历程简化为若干个载荷循环,供疲劳寿命估算和编制疲劳试验载荷谱使用。它以双参数法为基础,考虑了动强度(幅值)和静强度(均值)两个变量,符合疲劳载荷本身固有的特性。雨流计数法主要用于工程界,特别在疲劳寿命计算中运用非常广泛计数规则(1)雨流依次从载荷时间历程的峰值位置的内侧沿着...

u011391128的博客 3万+

c语言刷leetcode第五题Longest Palindromic Substring

近日要找实习,需要练习一下算法,于是准备刷题。用的是leetcode。但是刷了一段时间,就发现之前自己之前刷的题目的思路不是很清晰了,于是在这里记录一下自己的思路和代码,以供之后复习理解。 第五题Longest Palindromic Substring第五题Longest Palindromic Substring题干: Given a string s, find the longest

guijiao1243的博客 948

ChatGPT Windows桌面版:从安全下载到高效配置的全流程指南

WebView封装技术是将网页应用转化为独立桌面程序的核心方法,它通过嵌入浏览器内核实现跨平台功能复用。其原理在于利用Electron或Tauri等框架,将Web内容打包进原生应用外壳,同时注入系统级API调用能力。这项技术的工程价值在于显著提升了Web应用的系统集成度和用户体验,使其能够支持全局快捷键、独立进程和本地数据存储等原生特性。在AI助手深度集成工作流的应用场景中,这种封装模式解决了浏览器多标签页切换繁琐、会话管理不便等痛点。本文以ChatGPT桌面客户端为例,详细解析了基于开源项目的安全下载路径

weixin_30437847的博客 482

SAP期初库存导入 (1)

LSMW

IT养家 7191

[Leetcode] 5. Longest Palindromic Substring 和 [Leetcode] 516. Longest Palindromic Subsequence 最长回文子序

目录 1、[Leetcode] 5. Longest Palindromic Substring (1)、问题描述 (2)、思路分析 (3)、Java代码 2、[Leetcode] 516. Longest Palindromic Subsequence (1)、 问题描述 ​​​​​​ (2)、 思路分析 (3)、 Java代码 1、[Leetcode] 5. Longe...

qq_29545781的博客 648

图像去模糊(二)——Richardson–Lucy算法

Richardson Lucy Algorithm(Richardson-Lucy算法详解及效果实例)

xueruhongchen的博客 3万+

LeetCode力扣之 Longest Palindromic Substring

Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.Example:Input: "babad" Output: "bab" Note: "aba" is also a valid answer.  Example:I...

LeeWei 147

DAIC-WOZ数据集文件结构详解:CLNF特征文件、音频转录与PHQ8评分全解读

本文深入解析DAIC-WOZ数据集的文件结构,重点介绍CLNF特征文件、音频转录与PHQ8评分的详细内容。通过多模态数据处理实战指南,帮助研究者高效利用这一抑郁分析领域的重要资源,掌握面部动作单元、声学特征和文本转录的科学解读与应用技巧。

weixin_29159711的博客 183

Modbus协议全家桶(C#纯原生完整版):ModbusRTU + ModbusTCP + ModbusASCII 协议规范+完整封装+工业级实战

你已经掌握了C#串口/网口原生核心API和工业通信协议本质,而今天的主角Modbus协议,是工业通信领域绝对的王者、通用的标准、入门的必修课,没有之一。凡是做工业通信开发,必会Modbus协议;市面上99%的工业设备(PLC、变频器、温控仪、传感器、流量计、扫码枪)都原生支持Modbus协议。Modbus协议不是单一协议,而是一个「协议家族」,我们常说的就是这个家族的三大核心成员,也是工业现场的全部Modbus应用形态。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 562

[ LeetCode ] 5. Longest Palindromic Substring (C++ & Python)

题目: 5. Longest Palindromic Substring Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000. Example 1: Input: "babad" Output: "bab" No...

xn's blog 555

【安全设备篇】HVV面试专题

还有就是这个可能是被访问的这个内网系统,本身业务系统存在业务逻辑问题,因为内网所布置的很多业务系统往往不会考虑一些安全性问题,比如在正常的业务逻辑请求中直接带了sql语句,就会触发设备规则产生告警,这一类是属于误报,然后会将此告警上报给研判人员,需要研判组专家和甲方客户确认下是否是该系统存在此业务逻辑问题,并且需要确认告警的源ip在此告警的时间段附近有没有进行操作过。天眼日志分析主要基于系统和应用程序的日志数据来识别安全威胁,而威胁感知则通过收集和分析多种来源的情报信息。理解威胁的性质和威胁背后的原理。

大河之犬的博客 7923

LeetCode 刷题记录 5. Longest Palindromic Substring

题目: Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000. Example 1: Input: “babad” Output: “bab” Note: “aba” is also a valid answer. Exam...

dldldl1994的博客 328

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Leetcode 5.Longest Palindromic Substring

从这个月开始刷leetcode的题,由于水平有限,欢迎交流和提宝贵的意见。下面是我对 5.Longest Palindromic Substring 的实现。char *longestPalindrome(char *s) { unsigned long len; int count; int start,end; int l,r; int max;

WolfgangBai的博客 365

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

LeetCode 5 longest-palindromic-substring题解

LeetCode longest-palindromic-substring题解 题目链接 飞鱼决定开始每天保底五题(except Hard) 粗爆动态规划 (fast than 25%) 思路 主要就是挖掘前提条件: 1、单个字符必然回文 2、两个字符当且仅当他们相同时回文 其次是关联: 如果区间[i, j]是回文,当且仅当[ i+1, j-1]是回文 and s[i] == s[j] 然后再...

qq_42308861的博客 212

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

LeetCode 5. Longest Palindromic Substring 题解

本题是动态规划的经典问题,主要考察对状态定义和状态转移方程的理解。通过动态规划或中心扩展法,我们可以高效地找到最长的回文子串。动态规划的核心思想是:通过填充一个二维表格,记录每个子串是否是回文串。中心扩展法的核心思想是:遍历每个字符作为回文串的中心,向两边扩展,找到最长的回文串。在实际应用中,中心扩展法通常更受欢迎,因为它的空间复杂度更低,而且代码更简洁易懂。这种方法不仅适用于最长回文子串问题,还可以应用于许多其他需要处理回文串的问题。掌握这些方法,对于解决这类问题非常重要。

cannonjinx的博客 4595

LeetCode算法入门- Longest Palindromic Substring-day5

LeetCode算法入门- Longest Palindromic Substring-day5 Longest Palindromic Substring Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000. Examp...

hongjie_lin 217

【leetCode】之 Longest Palindromic Substring

使用方法:Manacher方法(参考博客中叫做——马拉车算法,很幽默的博主。。) 参考博客:https://blog.youkuaiyun.com/HappyRocking/article/details/82527217 https://blog.youkuaiyun.com/HappyRocking/article/details/82622881 在这里鸣谢此博主,讲的通俗...

fmx的专栏 187

【Leetcode】Longest Palindromic Substring

题目链接:https://leetcode.com/problems/longest-palindromic-substring/ 题目: Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and

业精于勤,荒于嬉 3159

LeetCode OJ 之 Longest Palindromic Substring (最长回文子串)

题目: Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring. 给定字符串S,找出S中

灯火阑珊处 1585

leetcode Longest Palindromic Substring

题目Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring. 题目来源:https://leetcode.c

不积跬步,无以至千里 1733

[LeetCode] Longest Palindromic Substring

Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring. 解题思路 网上有一种思路是说先得到输入字符

楚兴 1287

[leetcode] Longest Palindromic Substring 多种解法

很经典的题目,求字符串中的最长回文子串。 (1)最朴素的解法 ---暴力 复杂度O(N³) 这也是最容易想到的方法,最外层循环枚举起点i,第二层循环从i+1开始向后枚举,第三层判断是不是回文串。最后取最长子串的返回。 代码比较简单,这里没有列出。 (2)中心扩展法。复杂度O(N²) 枚举每一个字符作为中心点向左右扩展。但是这里要注意,对于每一次扩展要分奇偶两种情况。否则可能会漏掉情况。

NK_test的博客 2251

LeetCode:Longest Palindromic Substring(最长回文字串)

Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000. Example 1: Input: "babad" Output: "bab" Note: "aba" is also a valid answer. Exa...

但行好事,莫问前程 381

leetcode力扣刷题报告 5 Longest Palindromic Substring 最长回文子串

动态规划 leetcode解题

weixin_41147129的博客 181
上一篇: LeetCode-Longest Substring Without Repeating Characters
下一篇: 把字符串转换成整数
IT修道者
IT修道者 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄17年 326粉丝 95原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值