leetcode 5.最长回文子串
创始人
2025-01-09 04:03:07
0

思路:

对于回文,分为两种

1、奇数长度回文,以一个字符作为中心。

2、偶数长度回文,以两个字符作为中心。

private static int longestLen(String s,  int left, int right){         while(left >= 0 && right < s.length()){             if(s.charAt(left) != s.charAt(right)){                 break;             }             left--;             right++;         }         return right - left - 1;     }

该函数结合奇数和偶数情况,对中心两侧的字符进行检查,以获取回文串的最大长度。

在获取了最大长度后,加之中心字符的索引,我们就可以得到该回文字符串。

这里需要注意返回的内容是right - left -1;

如果不理解可以随手画个图感受一下。

主函数:

    public String longestPalindrome(String s) {         if(s==null || s.length() == 1) return s;         int index = 0;         int length = 1;         for (int i = 0; i < s.length(); i++) {             int len1 = longestLen(s, i, i);             int len2 = longestLen(s, i, i + 1);             if(len1 > length){                 length = len1;                 index = i - length / 2;             }             if(len2 > length){                 length = len2;                 index = i - length / 2 + 1;             }          }         return s.substring(index, index + length);     }

相关内容

热门资讯

热门推荐“川娱竞技血战辅助器”... 热门推荐“川娱竞技血战辅助器”wepoker辅助是真的吗(带开挂辅助插件AI教程);无需打开直接搜索...
教程辅助“同城510k修改”有... 教程辅助“同城510k修改”有挂方法开挂辅助下载安装教程;无需打开直接搜索加(薇:136704302...
透视能赢“雀神广东定制插件辅助... 较多好评“微乐万能挂官网”开挂(透视)辅助教程 了解更多开挂安装加(136704302)微信号是一款...
教程辅助“白金岛怎么开透视”有... 教程辅助“白金岛怎么开透视”有挂教程开挂辅助工具安装教程;打开点击测试直接进入微信(13670430...
透视真的“海洋麻将辅助器”we... 透视真的“海洋麻将辅助器”wepoker轻量版透视系统(带开挂辅助软件存在挂教程);无需打开直接搜索...
教程辅助“福建天天开心辅助”有... 您好:福建天天开心辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...
透视软件“圣盛鄂州晃晃辅助”w... 圣盛鄂州晃晃辅助是一款专注玩家量身打造的游戏记牌类型软件,在圣盛鄂州晃晃辅助这款游戏中我们可以记录下...
教程辅助“518互游辅助”有挂... 较多好评“微乐万能挂官网”开挂(透视)辅助教程 了解更多开挂安装加(136704302)微信号是一款...
三分钟了解“微信小程序家乡大贰... 微信小程序家乡大贰辅助器开挂教程视频分享装挂详细步骤在当今的网络游戏中,微信小程序家乡大贰辅助器作为...
教程辅助“aapoker脚本”... 【亲,aapoker脚本 这款游戏可以开挂的,确实是有挂的,很多玩家在这款aapoker脚本中打牌都...