题目:

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的更多相关文章

  1. LeetCode题解之Longest Palindromic Substring

    1.题目描述 2.问题分析 计算每个字符所组成的字符串的回文子串. 3.代码 string longestPalindrome(string s) { ; ; bool is_odd = false ...

  2. 【LeetCode】5. Longest Palindromic Substring 最长回文子串

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 公众号:负雪明烛 本文关键词:最长回文子串,题解,leetcode, 力扣,python ...

  3. 【一天一道LeetCode】#5 Longest Palindromic Substring

    一天一道LeetCode系列 (一)题目 Given a string S, find the longest palindromic substring in S. You may assume t ...

  4. 【LeetCode OJ】Longest Palindromic Substring

    题目链接:https://leetcode.com/problems/longest-palindromic-substring/ 题目:Given a string S, find the long ...

  5. 【LeetCode】005. Longest Palindromic Substring

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

  6. 【LeetCode】5. Longest Palindromic Substring 最大回文子串

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

  7. 【leetcode】5. Longest Palindromic Substring

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

  8. 《LeetBook》leetcode题解(5):Longest Palindromic [M]——回文串判断

    我现在在做一个叫<leetbook>的免费开源书项目,力求提供最易懂的中文思路,目前把解题思路都同步更新到gitbook上了,需要的同学可以去看看 书的地址:https://hk029.g ...

  9. LeetCode OJ:Longest Palindromic Substring(最长的回文字串)

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

随机推荐

  1. 【 记忆网络 2 】 End-to-End Memory Network

    继上一篇:Memory Network 1. 摘要 引入了一个神经网络,在一个可能很大的外部记忆上建立了一个recurrent attention模型. 该体系结构是记忆网络的一种形式,但与该工作中的 ...

  2. 剑指offer(50)数组中重复的数字

    题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任意一个重复的数字. 例如,如果输入长度为 ...

  3. GIT 私有仓库 github项目提交失败 master -> master (non-fast-forward)

    https://blog.csdn.net/fightingforcv/article/details/52073182 https://blog.csdn.net/u014135752/articl ...

  4. 遗留系统如何用DDD重构(未完,待续)

    GETTING DDD STARTED SURROUNDED BY LEGACY SYSTEMS ByEric Evans

  5. python腾讯语音合成

    一.腾讯语音合成介绍 腾讯云语音合成技术(TTS)可以将任意文本转化为语音,实现让机器和应用张口说话. 腾讯TTS技术可以应用到很多场景,比如,移动APP语音播报新闻:智能设备语音提醒:依靠网上现有节 ...

  6. Pandas 基础(4) - 读/写 Excel 和 CSV 文件

    这一节将分别介绍读/写 Excel 和 CSV 文件的各种方式: - 读入 CSV 文件 首先是准备一个 csv 文件, 这里我用的是 stock_data.csv, 文件我已上传, 大家可以直接下载 ...

  7. maven eclipse配置 创建项目

    下载maven jar 可以去官网http://maven.apache.org/ 或者我的百度云http://download.csdn.net/detail/taopeng_100/9894787 ...

  8. DAY15 模块

    一.模块 1.1 模块的定义:模块就是一系列功能的集合体 1.2 模块的四种存在方式: 1.使用python编写的.py文件(任一py文件都可以作为模块) 2.包:一堆py文件的集合体 3.使用C编写 ...

  9. 【分布式搜索引擎】Elasticsearch写入和读取数据过程

    一.Elasticsearch写人数据的过程 1)客户端选择一个node发送请求过去,这个node就是coordinating node(协调节点)2)coordinating node,对docum ...

  10. DP爬台阶问题

    1. 初级爬台阶 - 求最短步数 LC - 70 一次可以迈1-2个台阶,因此最短步数与前两个台阶有关. Initial state: 第一阶:1步 : 第二阶:1步 deduction functi ...