当前位置: 首页 > news >正文

烟台定制网站建设电话seo搜索推广

烟台定制网站建设电话,seo搜索推广,常德交通网站,wordpress文章相册模式一、题目 给你一个字符串 s,找到 s 中最长的回文子串。 如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。 示例 1: 输入:s "babad" 输出:"bab" 解释:"aba"…

一、题目

给你一个字符串 s,找到 s 中最长的回文子串。

如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。

示例 1:

输入:s = "babad"
输出:"bab"
解释:"aba" 同样是符合题意的答案。

示例 2:

输入:s = "cbbd"
输出:"bb"

二、思路解析

这道题我看到一位大佬的题解很是巧妙,利用的是回文串的一个性质。

对于⼀个⼦串⽽⾔,如果它是回⽂串,并且⻓度⼤于 2,那么将它⾸尾的两个字⺟去除之后,它仍然是个回⽂串。如此这样去除,⼀直除到⻓度⼩于等于 2 时呢?⻓度为 1 的,⾃⾝与⾃⾝就构成回⽂;

⽽⻓度为 2 的,就要判断这两个字符是否相等了。

从这个性质可以反推出来,从回⽂串的中⼼开始,往左读和往右读也是⼀样的。那么,是否可以枚举回⽂串的中⼼呢?
从中⼼向两边扩展,如果两边的字⺟相同,我们就可以继续扩展;如果不同,我们就停⽌扩展。这样,只需要⼀层 for 循环,我们就可以完成先前两层 for 循环的⼯作量。

三、完整代码

class Solution {public String longestPalindrome(String s) {int begin = 0;int n = s.length();int len = 0;for(int i = 0;i < n; i++){int left = i;int right = i;while(left >= 0 && right < n && s.charAt(left) == s.charAt(right)){left--;right++;}if(right - left - 1 > len){begin = left + 1;len = right - left - 1;}left = i;right = i + 1;while(left >= 0 && right < n && s.charAt(left) == s.charAt(right)){left--;right++;}if(right - left - 1 > len){begin = left + 1;len = right - left - 1;}            }return s.substring(begin, begin + len);}
}

以上就是本篇博客的全部内容啦,如有不足之处,还请各位指出,期待能和各位一起进步!

http://www.fp688.cn/news/141877.html

相关文章:

  • 网站开发公司能否挣钱seo投放是什么意思
  • 如何建立营销网络seo技术外包公司
  • 房地产网站制作自媒体发布软件app
  • 政府网站建设怎么做怎么免费建公司网站
  • 自适应网站平台云南今日头条新闻
  • 专门做运动鞋的网站网络营销理论包括哪些
  • 佛山建网站永网软文范例大全
  • 个人网站建设广州seo和网络推广
  • 地方门户网站赚钱seo的工作流程
  • 资源下载类网站源码搜搜
  • 网站建设作业怎么让关键词快速上首页
  • 白云企业网站建设深圳今天重大事件新闻
  • wordpress教程nginx上海seo推广公司
  • 做pc端网站哪家好河北seo技术
  • 网站和后台建设百度搜索引擎优化方式
  • 百色网站建设公司如何创建自己的网址
  • wordpress怎样搭建外贸网站网店
  • 旅行社应做哪些网站游戏推广平台哪个好
  • 东营网站开发在线seo诊断
  • 电子商务网站建设汉狮网页设计需要学什么
  • 外文网站制作seo网站优化培训班
  • 网站管理员招聘网站推广开户
  • 集宁做网站的公司站长工具seo综合查询网
  • 网站搭建费用计入什么科目东莞网站制作公司联系方式
  • 网站客服代码左右环球网疫情最新
  • 潍坊网站制作工具推广链接
  • 百度云架设网站百度软件中心下载
  • 企业网站建设方案 功能规划seo技巧与技术
  • 给手机开发网站福建seo网站
  • java 开发手机网站开发游戏优化是什么意思