Level:

  Medium

题目描述:

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.

Example 2:

Input: "cbbd"
Output: "bb"

思路分析:

  找出字符串的最长回文子串,我们遍历字符串,把每一个字符当做是回文串的中间元素,然后设置两个指针向两边扩展,如果两个指针对应的值相同则满足回文串的要求,继续向下扩展,否则停止。以下一个元素为回文串的中间元素,进行与上面相同的操作。最后我们选它们中间最长的串做为结果。

代码:

public class Solution{int lo,maxlen;  //回文串的起始坐标,和回文串的长度public String longestPalindrome(String s){if(s.length()<2)return s;for(int i=0;i<s.length()-1;i++){extendPalidrome(i,i,s); //假设回文串的长度为奇数extendPalidrome(i,i+1,s);//假设回文串的长度为偶数}return s.substring(lo,lo+maxlen);}public void extendPalidrome(int start,int end,String s){while(start>=0&&end<s.length&&s.charAt(start)==s.charAt(end)){start--;end++;}if(maxlen<end-start-1){   //更新最长回文串的长度lo=start+1;maxlen=end-start-1;}}
}

转载于:https://www.cnblogs.com/yjxyy/p/10727989.html

21.Longest Palindromic Substring(最长回文子串)相关推荐

  1. LeetCode 5. Longest Palindromic Substring 最长回文子串 Python 四种解法(Manacher 动态规划)

    Longest Palindromic Substring 最长回文子串 学习笔记 1. Brute method 第一种方法:直接循环求解,o(n2)o(n^2) class Solution:de ...

  2. LeetCode:Longest Palindromic Substring 最长回文子串

    Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...

  3. Java Longest Palindromic Substring(最长回文字符串)

    假设一个字符串从左向右写和从右向左写是一样的,这种字符串就叫做palindromic string.如aba,或者abba.本题是这种,给定输入一个字符串.要求输出一个子串,使得子串是最长的padro ...

  4. 转载-----Java Longest Palindromic Substring(最长回文字符串)

    转载地址:https://www.cnblogs.com/clnchanpin/p/6880322.html 假设一个字符串从左向右写和从右向左写是一样的,这种字符串就叫做palindromic st ...

  5. 0005-Longest Palindromic Substring(最长回文子串)

    这个系列算是出于个人兴趣开的一个新坑吧,最近看到同学刷LeetCode算法题,就想写写那些可以一行Python代码写出来的题目,因此本专栏的文章的解题方式效率不做保证,只为追求"一行的浪漫& ...

  6. C++longest palindromic subsequence最长回文子序列算法实现(附完整源码)

    C++longest palindromic subsequence最长回文子序列算法 C++longest palindromic subsequence最长回文子序列算法实现完整源码(定义,实现, ...

  7. leetcode(5)—— Longest Palindromic Substring(最长回文子串)

    longest-palindromic-substring 法1:暴力搜索(但会超时) 遍历全部子串(n+(n−1)+-+1=n(1+n)2n+(n-1)+\ldots+1=\frac{n(1+n)} ...

  8. [译+改]最长回文子串(Longest Palindromic Substring) Part II

    [译+改]最长回文子串(Longest Palindromic Substring) Part II 原文链接在http://leetcode.com/2011/11/longest-palindro ...

  9. leetcode 5 :Longest Palindromic Substring 找出最长回文子串

    题目: Given a string S, find the longest palindromic substring in S. You may assume that the maximum l ...

最新文章

  1. 2021年春季学期-信号与系统-第一次作业参考答案-第五题
  2. Django框架----分页器(paginator)
  3. 《Go 语言编程之旅》送煎架和站长写的书
  4. SQL Server 数据库关键知识点详解(优秀经典)
  5. javascript 唯一值的集合 Set对象
  6. 【然天一】随机读写(4k)百盘天梯
  7. java代码 网站_推荐几个比较好的Java代码查询网站
  8. 2020 计蒜之道 预赛 第一场 爆零记
  9. SQLServer2008----对数据分区
  10. Atitit.mvc的趋势与未来attilax总结
  11. Rust: codewars的Highest and Lowest
  12. java怎么模拟rfid_如何使用RFID阅读器获取RFID标签上印刷的序列号?
  13. 备考OCJP认证知识点总结(五)
  14. 计算机查看iphone照片,苹果手机上的图片如何在电脑上查看
  15. 魔兽世界服务器卡 邮件寄不出去,魔兽世界怀旧服邮件收不到怎么办 WOW怀旧服邮件取不出来解决方法...
  16. 无需编写代码,Windows设置开机无需手动登录,自动拨号上网
  17. CSDN博客专家申请成功
  18. 左宗棠:大清朝最后一棵顶梁柱
  19. 领存!专注为军工业提供计算、存储、加密以及数据安全的系统服务
  20. java swing表格翻页_让Swing表格支持远程后台数据翻页

热门文章

  1. Visual Studio 2008在设计视图和代码视图切换的快捷键F7
  2. 【大盛】全网首发HTC One/M7 最新本地化TrickDroid9.0/固件升级/永久root/高级,快速设置/稳定,流畅经典ROM...
  3. Java 自动转换和强制转换
  4. 编程开发之--单例模式(6)单元测试
  5. 中国科学院大学2014年数学分析高等代数考研试题
  6. HTML5 浏览器支持(怎么样让低版本浏览器支持html5?)
  7. iOS开发UI篇—CAlayer(创建图层)
  8. 用面向对象封装ASP中的cookie操作
  9. MySQL之如何删除重复数据只保留一条
  10. Kubernetes安装之十:配置node节点之kube-proxy