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:
Input: "babad" Output: "bab" Note: "aba" is also a valid answer.
Example:
Input: "cbbd" Output: "bb"
从对题目的理解来看,其实就是求最长的回文子串。
知识:首先当然是字符串string类的知识,在3题的题解中已经总结过,
那么这次就只用补充一个求子串的函数,摘抄一个博主写的区别:
substr有2种用法:
假设:string s = "0123456789";
string sub1 = s.substr(5); //只有一个数字5表示从下标为5开始一直到结尾:sub1 = "56789"
string sub2 = s.substr(5, 3); //从下标为5开始截取长度为3位:sub2 = "567"
下面就来说说我的思路,这个题我的方法就是从中间开始试,不断的向两边扩展,
中间有可能是一个字符不,也有可能是两个字符,如果这个字符相等就不断的往后去找。
当然中间遇到了一些bug,比如maxLen要设置为1,这样因为我的是只有一个字符进不去循环的问题就解决了。
当然,看到网上一些比较好的代码i是从1开始循环就不会牵扯这么多的问题。
这是修改以后的代码
class Solution {
public:
string longestPalindrome(string s) {
int maxLen=;
int start=;
for(int i=;i<s.length()-;i++)
{
int low=i;
int high=i+;
while(low>=&&high<=s.length()-&&s[low]==s[high])
{
low--;
high++;
}
if(maxLen<(high-low-))
{
maxLen=high-low-;
start=low+;
}
low=i;
high=i+;
while(low>=&&high<=s.length()-&&s[low]==s[high])
{
low--;
high++;
}
if(maxLen<(high-low-))
{
maxLen=high-low-;
start=low+;
}
}
return s.substr(start,maxLen);
}
};
leetcode题解 5. Longest Palindromic Substring的更多相关文章
- LeetCode题解之Longest Palindromic Substring
1.题目描述 2.问题分析 计算每个字符所组成的字符串的回文子串. 3.代码 string longestPalindrome(string s) { ; ; bool is_odd = false ...
- 【LeetCode】5. Longest Palindromic Substring 最长回文子串
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 公众号:负雪明烛 本文关键词:最长回文子串,题解,leetcode, 力扣,python ...
- 【一天一道LeetCode】#5 Longest Palindromic Substring
一天一道LeetCode系列 (一)题目 Given a string S, find the longest palindromic substring in S. You may assume t ...
- 【LeetCode OJ】Longest Palindromic Substring
题目链接:https://leetcode.com/problems/longest-palindromic-substring/ 题目:Given a string S, find the long ...
- 【LeetCode】005. Longest Palindromic Substring
Given a string s, find the longest palindromic substring in s. You may assume that the maximum lengt ...
- 【LeetCode】5. Longest Palindromic Substring 最大回文子串
题目: Given a string S, find the longest palindromic substring in S. You may assume that the maximum l ...
- 【leetcode】5. Longest Palindromic Substring
题目描述: Given a string S, find the longest palindromic substring in S. You may assume that the maximum ...
- 《LeetBook》leetcode题解(5):Longest Palindromic [M]——回文串判断
我现在在做一个叫<leetbook>的免费开源书项目,力求提供最易懂的中文思路,目前把解题思路都同步更新到gitbook上了,需要的同学可以去看看 书的地址:https://hk029.g ...
- LeetCode OJ:Longest Palindromic Substring(最长的回文字串)
Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...
随机推荐
- lvs 进阶 第二章
linux virtual server 一 . lvs lvs 对数据进行四层转发,根据目标地址和目标端口对请求数据进行转发. lvs 包含ipvsadm 和ipvs: ipvsadm :用户空间的 ...
- Linux 系统TCP连接内存大小限制 调优
系统TCP连接内存大小限制 TCP的每一个连接请求,读写都需要占用系统内存资源,可根据系统配置,对TCP连接数,内存大小,限制调优. 查看系统内存资源 记录内存 详情:cat /proc/meminf ...
- Bitmap的秘密
作者: 周海鹏 来源: infoQ 发布时间: 2015-02-13 11:26 阅读: 4999 次 推荐: 10 原文链接 [收藏] 之前已经参加过几次QCon峰会,不过今年QCo ...
- 在新获取git中项目时出现的问题汇总
新下拉git项目,今天遇到的问题,因为刚配置实用jdk和idea,所以有可能在打开springboot项目时查看mysql数据库驱动显示为红色. 之后看到pom文件也没有错,最后发现才是在项目中还没有 ...
- dump总结
•http://blog.csdn.net/lkforce/article/details/60878295 •日志文件生成 •方法1 •jmap -dump:format=b,file=201703 ...
- Mac配置Hadoop最详细过程
Mac配置Hadoop最详细过程 原文链接: http://www.cnblogs.com/blog5277/p/8565575.html 原文作者: 博客园-曲高终和寡 https://www.cn ...
- WordPress上传到互联网搭建
1.建站流程: 1.购买域名 2.购买空间 3.解析绑定 4.上传安装 2.购买域名 域名的购买可以到相关域名出售的服务商那儿买,如阿里云,主机庙.这里就不做详细解释了 3.购买空间 域名的购买可以到 ...
- jquery将表单序列化
在工作中经常要将表单数据通过ajax提交,所以需要将表单序列化为json对象. 已经有大神提供了,以前一直百度,现在决定抄过来收藏一下,方便以后自己用,尊重原创,文章转载自:http://www.cn ...
- IDEA spirng boot @Autowired注解 mapper出现红色下划线解决方法
如图所示,解决方法为: 把勾去掉即可.
- e1000e 网卡如遇到大包未线速问题解法
e1000e 网卡如遇到大包(>1280)未线速,把'DEFAULT_ITR'改为0, 不设中断频率上限试试 see@intel/e1000e/param.c/* Interrupt Throt ...