LeetCode5. 最长回文子串(Java)

【2025最新版】间接平差——以水准网平差为例 (python详细过程版) 水准网间接平差的python代码实现。博客长期更新,本文最新更新时间为:2025年5月20日。 阅读详情

题目:

给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。

示例:

在这里插入图片描述
代码:

  • 解法一
class Solution {
	public String longestPalindrome(String s) {
	//截取出全部子串
		int len = s.length();
		for (int i = len; i > 0; i--) {
			for (int start = 0, end = i-1; end < len; start++, end++) {
			//截取出子串
				String temp = s.substring(start, end + 1);
					//调用判断是否为回文字符串方法
				if (isPalindrome(temp)) {
					return temp;
				}
			}
		}
		return "";
	}
	//利用夹逼思想判断字符串是否是回文子串
	public static boolean isPalindrome(String temp) { // 夹逼思想
		int start = 0;
		int end = temp.length() - 1;
		while (start < end) {
			if (temp.charAt(start) == temp.charAt(end)) {
				start++;
				end--;
			} else {
				return false;
			}
		}
		return true;
	}
}

代码解释:
在这里插入图片描述

  • 别人的代码
class Solution {
    public String longestPalindrome(String s) {
        int m=s.length();
        if(m==0)
            return "";
        //取出每个子串
        for(int len=m;len>1;len--){
            for(int i=0;i<m-len+1;i++){
            //判断是否是回文子串
                if(isTrue(s,i,i+len-1))
                    return s.substring(i,i+len);
            }
        }
        return s.substring(0,1);
    }
    //利用夹逼思想判断子串是否是回文子串
    private boolean isTrue(String s,int i,int j){
        while(i<=j){
            if(s.charAt(i)!=s.charAt(j))
                return false;
            i++;
            j--;
        }
        return true;
    }
}
海洋捕食者算法(MPA)详解:从海洋生态智慧到高性能优化 摘要: 海洋捕食者算法(MPA)是一种基于海洋生态觅食行为的元启发式优化算法,模拟捕食者(如鲨鱼)的布朗运动和莱维飞行策略进行全局与局部搜索。算法分为三阶段:高速比阶段(全局探索)、单位速度比阶段(平衡搜索)和低速比阶段(局部开发),通过精英矩阵和FADs效应(概率扰动)避免早熟收敛。MPA具有参数少、收敛快、寻优能力强等特点,适用于复杂优化问题,其数学模型将生物行为转化为随机游走与自适应策略,并通过收敛因子动态调整探索-开发平衡。实验表明,MPA在多个基准问题上表现优异。 阅读详情

相关推荐

鼎捷T100二次开发实战:如何给开窗功能加上权限锁(附完整代码)

本文详细解析了鼎捷T100二次开发中开窗功能权限锁的实现方法,提供了两种技术方案:开窗程序重构法和动态WHERE条件注入法,并附上完整代码示例。通过真实案例,帮助开发者解决数据权限细粒度控制的难题,提升ERP系统的安全性和实用性。

weixin_28454475的博客 443

题解:最长回文子串(4种解法)

题目:最长回文子串 难度:中等 一、描述 二、题解: 2.1 暴力法(O(N^3)) 解释: 循环三次。第一次起始点循环;第二次终止点循环(从最右边开始到起始点为止);第三次起始点开始终止点结束,当两个值不相等时候跳出循环。只有完整进行第三次循环才满足回文串的条件。 class Solution: def longestPalindrome(self, s: str) -> str: max_ = 1 max_str = s[0] length

v-space的博客 2万+

LSTM模型 轨迹经纬度预测

原始时间序列数据如下所示,我们只取前两列纬度和经度作为输入数据 我们设定用前六个位置信息预测下一个位置,则两个样本的输入输出数据如下所示: 创建LSTM网络训练模型: import numpy as np from keras.layers.core import Dense, Activation, Dropout from keras.layers import LS...

Muzi_Water的博客 2万+

最长回文子串(Java版本)

目录 1、题目 2、示例 3、解决方案 3.0 暴力破解 3.1 动态规划 3.2中心扩展算法 3.3Manacher 算法 4.参考 1、题目 给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。 2、示例 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cb...

tiankong_12345的博客 1万+

概率论 知识图谱 + 实战案例解析

本文通过构建概率论知识图谱,系统梳理了从随机试验、概率、条件概率到随机变量与分布的核心概念及其内在联系。结合朴素贝叶斯分类器和蒙特卡洛模拟等实战案例,深入解析了条件概率、独立性及大数定律等理论如何应用于机器学习与实际问题求解,旨在帮助读者建立结构化思维,将理论有效转化为解决实际问题的能力。

weixin_29051193的博客 267

新手入门机器学习案例(附源代码)

无

guguo666的博客 6656

笔试面试算法经典--最长回文子串

回文的定义正读和反读都相同的字符序列为“回文”,如“abba”、“abccba”是“回文”,“abcde”和“ababab”则不是“回文”。字符串的最长回文子串,是指一个字符串中包含的最长的回文子串。例如“1212134”的最长回文子串是“12121”。下面给出了三种求最长子串的方法。解法1(中心扩展法)时间复杂度O(n^2),空间复杂度为O(1)。中心扩展法的思路是,遍历到数组的某一个元素时,以这

有图有真相 4万+

uniapp [安卓苹果App端] - 解决支付宝支付报错requestPayment:fail [payment支付宝:62009]未知错误,使用uni.requestPayment支付报错排查方案

uni-app支付宝,uniapp支付宝沙箱支付报错,uni.requestPayment,uniAPP App支付宝支付提示错误requestPayment:fail [payment支付宝:62009]未知错误,UNI-APP支付宝报错"code": -100,uniapp 解决安卓App使用uni.requestPayment实现沙箱环境支付宝支付报错,uniapp安卓app使用支付宝的沙箱环境支付时报了这个错,安卓端app支付宝支付,在沙箱测试环境测支付,提示“商家订单参数异常,请重新发起付款,选择

🏆 前端领域优质创作者 9610

LeetCode第五题:最长回文子串(Java)

题目:最长回文子串 示例: 输入:s = "babad" 输出:"bab" 解释:"aba" 同样是符合题意的答案。 这道题用到许多编程思想,中心扩展、动态规划、著名的manacher(马拉车),是前面题所没用用过的方法。 方法一:暴力循环 找到所有子串,判定是否是回文串,保存最长长度的回文串。 public static String longestPalindrome(String s) { //存储最长子串 String str = "";

巨坑的菜比的博客 1万+

【Pytorch实战教程】基于RML2018的融合网络分类 | LSTM网络和ResNet网络融合 | 含数据集的处理

这段代码是从原始数据中读取所选择的数据,画出星座图,并将星座图保存本地,然后将IQ数据保存成mat文件,将图片数据读取之后保存为npy文件,方便后续融合网络使用。

若北辰 928

通信算法之249: DJI波形物理层

D-J-I的Lightbridge波形、Ocusync1波形、Ocusync2波形、Ocusync3波形,

leegang12的专栏 1442

最长回文子串Java

最长回文子串

m0_52254526的博客 3189

告别定位不准!Inner-IoU助力YOLOv11边界框回归精度飙升

Inner-IoU 凭借辅助边框的创新设计,成功解决了传统 IoU 损失在小目标、遮挡场景下的收敛难题,为 YOLOv11 注入了更强的定位能力。从原理剖析到代码集成,本教程已为你铺就了一条“精度提升”的实战路径。现在,不妨亲自上手尝试,让你的目标检测模型在各类数据集上都能交出一份“精度优异”的答卷——相信我,当你看到检测框精准贴合目标的那一刻,你会明白这份尝试的价值。

FJN110的博客 192

java力扣LeetCode 5. 最长回文子串

5. 最长回文子串 java力扣LeetCode 给你一个字符串 s,找到 s 中最长的回文子串。 方法一 暴力求解 class Solution { public String longestPalindrome(String s) { String res = null ; int m=0; int flag=0; for(int i = 0;i<s.length(); i++) { for(int j =s.length()-1; j>i;j--)

weixin_43857838的博客 626

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

【LeetCode_5】力扣--最长回文子串(Java)

力扣第五题题解

qq_75238809的博客 313

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

力扣leetcode 5. 最长回文子串 java

class Solution { public String longestPalindrome(String s) { if(s.length() == 0) return ""; int[][] dp = new int[s.length()][s.length()]; int start = 0, maxLen = 1; ...

izhxxx的博客 255

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

力扣(LeetCode) 5.最长回文子串 java

5.最长回文子串(中等) 题目如下: 给你一个字符串 s,找到 s 中最长的回文子串。 示例 1: 输入:s = "babad" 输出:"bab" 解释:"aba" 同样是符合题意的答案。 示例 2: 输入:s = "cbbd" 输出:"bb" 示例 3: 输入:s = "a" 输出:"a" 示例 4: 输入:s = "ac" 输出:"a" 提示: 1 <= s.length <= 1000 s 仅由数字和英文字母(大写和/或小写)组成 回文的定义大家都知道了,这题说的也很明确了。就

我命由己不由天 298

力扣(LeetCode) 5.最长回文子串(java)

给你一个字符串s,找到s中最长的回文子串。如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。

Cnc2014的博客 329

使用java解决最长回文子串-Leetcode 第5题

使用java解决最长回文子串-Leetcode 第5题 首先分析题目———最长回文子串,我们可以把问题拆分成两部分,即字符串的最长回文串问题 和 子串问题。 1.1、最长回文串 在此之前,我们首先了解一下如何判断字符串为回文串 采用递归的方式判断字符串是否为回文串 //high为字符串的长度 - 1,low为字符串的起点 public boolean isPalindrome(String s,int low, int high){ //Base Case

qq_54650406的博客 1011

Java实现 LeetCode 5 最长回文子串

5. 最长回文子串 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: “babad” 输出: “bab” 注意: “aba” 也是一个有效答案。 示例 2: 输入: “cbbd” 输出: “bb” 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/longest-palindromic...

南 墙 1万+

leetcode hot100【LeetCode 5.最长回文子串】java实现

LeetCode 5.最长回文子串

DataCrafter的博客 392

Leetcode 5最长回文子串 Java

最长回文子串 题目:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: “babad” 输出: “bab” 注意: “aba” 也是一个有效答案。 示例 2: 输入: “cbbd” 输出: “bb” 其实这道题的解法也是通过在网上搜别人的答案最后才完成的,并且只用了动态规划的办法,没有考虑更加适合的Manacher算法。本文只是记录一下我的...

qxdPx的博客 429

LeetCode 5. 最长回文子串 java实现

第五题 最长回文子串 官方提供了四种做法 本文中目前只举例第二种做法 后续在更新 第二种做法就是中心点法 原题 给你一个字符串 s,找到 s 中最长的回文子串。 示例 1: 输入:s = “babad” 输出:“bab” 解释:“aba” 同样是符合题意的答案。 示例 2: 输入:s = “cbbd” 输出:“bb” 提示: 1 <= s.length <= 1000 s 仅由数字和英文字母组成 算法分析 O(n^2) 1、枚举中心点i 中心点的指针从中间向两边扩散 边界是.

qq_41810415的博客 701

LeetCode 5:最长回文子串——Java 中心扩展法详解

本文介绍 LeetCode 5“最长回文子串”的中心扩展解法。通过枚举字符串中的每个位置,分别处理以单个字符为中心的奇数回文,以及以两个相邻字符为中心的偶数回文,并使用左右指针不断向两侧扩展。文章结合示例讲解最长回文起点与长度的记录方法,给出完整 Java 代码、复杂度分析及常见边界问题。

weixin_51228134的博客 318

最长回文子串Java实现(力扣5/1557)

力扣刷题小记 题目描述: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb" 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/longest-pa...

yonghu14587007的博客 269

千问 LeetCode 5.最长回文子串 Java实现

核心思想:回文串是对称的,所以可以从每个字符(或两个字符之间的空隙)向两边扩展,找到以该位置为中心的最长回文串。// 回文串范围是 [left+1, right-1],长度为 right - left - 1。// p[i] 表示以 t[i] 为中心的回文半径。- 两个相同相邻字符是回文:dp[i][i+1] = (s[i] == s[i+1])// 偶数长度:以 s[i] 和 s[i+1] 之间为中心。- 偶数长度:以两个字符之间为中心,如 "abba",中心是两个 b 之间。

m0_37843156的博客 267
上一篇: LeetCode4. 寻找两个有序数组的中位数(java)
下一篇: LeetCode8. 字符串转换整数 (atoi)(java)
inferno devil
博客等级 码龄9年 54粉丝 172原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值