题目:

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. flutter中使用webview

    首先要安装一个插件:flutter_webview_plugin dependencies: flutter_webview_plugin: ^0.2.1+2 使用方法: new MaterialAp ...

  2. K8S学习笔记之二进制部署Kubernetes v1.13.4 高可用集群

    0x00 概述 本次采用二进制文件方式部署,本文过程写成了更详细更多可选方案的ansible部署方案 https://github.com/zhangguanzhang/Kubernetes-ansi ...

  3. css3 二维码 添加 扫描特效

    <section data-role="paragraph" class="_135editor" style="border: 0px non ...

  4. [C++ Primer Plus] 第3章、处理数据(一)程序清单

    一.程序清单3.1(变量的一些知识点) #include<iostream> #include<climits> using namespace std; void main( ...

  5. Robot Framework问题记录

    robotframework运行时后台报错UnicodeDecodeError UnicodeDecodeError :'utf-8' codec can't decode byte 0xb2 in ...

  6. 温顾知新系列-JAVA网络编程系统(1)- 流

    一.字节流 1. 输出流 Java的基本输出流类是java.io.OutputStream; public abstract calss OutputStream 此类常用的写入数据的基本方法如下: ...

  7. 【分布式搜索引擎】Elasticsearch分布式架构原理

    一.相关概念介绍 1)集群(cluster) 一个集群(cluster)由一个或多个节点组成. 这些节点具有相同的cluster.name,它们协同工作,分享数据和负载.当加入新的节点或者删除一个节点 ...

  8. jTimer

      很多时候我们需要按时间间隔执行一个任务,当满足一定条件时停止执行.此插件旨在解决这一经常遇到的问题. jTimer: (function ($) { $.extend({ timer: funct ...

  9. js之原型,原型链

    1.原型是什么?    在构造函数创建出来的时候,系统会默认的创建并关联一个对象,这个对象就是原型,原型对象默认是空对象    默认的原型对象中会有一个属性constructor指向该构造函数  原型 ...

  10. git branch 不显示的原因

    转自:https://blog.csdn.net/qq_39671159/article/details/81261049 必须使用git init命令创建仓库,执行git add . 和git co ...