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"

动态规划法:以"ababae"为例:
aaarticlea/png;base64,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" alt="" width="548" height="207" />
 class Solution(object):
def longestPalindrome(self, s):
"""
:type s: str
:rtype: str
"""
sLength=len(s)
begin=0
length=0
table=[]
for i in range(sLength):
tem=[]
for j in range(sLength):
tem.append(0)
table.append(tem) for i in range(sLength):
table[i][i]=1 for i in range(sLength-1):
if s[i]==s[i+1]:
table[i][i+1]=1
begin=i
length=1 for tem in range(1,sLength):
for i in range(sLength-tem):
j=i+tem
if (s[i]==s[j] and table[i+1][j-1])==1:
table[i][j]=1
length=tem
begin=i return s[begin:begin+length+1]


Leetcode5:Longest Palindromic Substring@Python的更多相关文章

  1. LeetCode5:Longest Palindromic Substring

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

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

    题目 最长回文子串 给出一个字符串(假设长度最长为1000),求出它的最长回文子串,你可以假定只有一个满足条件的最长回文串. 样例 给出字符串 "abcdzdcab",它的最长回文 ...

  3. LeetCode第[5]题(Java):Longest Palindromic Substring 标签:String、动态规划

    题目中文:求最长回文子串 题目难度:Medium 题目内容: Given a string s, find the longest palindromic substring in s. You ma ...

  4. No.005:Longest Palindromic Substring

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

  5. leetcode:Longest Palindromic Substring(求最大的回文字符串)

    Question:Given a string S, find the longest palindromic substring in S. You may assume that the maxi ...

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

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

  7. LeetCode第五题:Longest Palindromic Substring

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

  8. 【LeetCode5】Longest Palindromic Substring★★

    1.题目描述: 2.解题思路: 题意:求一个字符串的最长回文子串. 方法一:中心扩展法.遍历字符串的每一个字符,如果存在回文子串,那么中心是某一个字符(奇数)或两个字符的空隙(偶数),然后分两种情况( ...

  9. leetcode Longest Palindromic Substring python

    class Solution(object): def longestPalindrome(self, s): """ :type s: str :rtype: str ...

随机推荐

  1. Eclipse搭建SSH(Struts2+Spring+Hibernate)框架教程

    | 版权声明:本文为博主原创文章,未经博主允许不得转载. 前言 确实,刚创博客,对于这个陌生的东西还是有些许淡然.这是我的第一篇博文,希望能给你们有帮助,这就是我最大的乐趣! 好了下面进入正题: SS ...

  2. AT Tool --- android手机发送at指令

    之前网上也有一款类似的软件,估计是华为内部人员开发的,不过很变态,不但只支持华为的几款手机,而且只能发一条AT命令,然后就不让你发了:所以很气愤,今天花了一天时间自己写了这么款程序,而且是支持所有An ...

  3. java编译期优化

    java语言的编译期其实是一段不确定的操作过程,因为它可以分为三类编译过程: 1.前端编译:把.java文件转变为.class文件 2.后端编译:把字节码转变为机器码 3.静态提前编译:直接把*.ja ...

  4. Linux入侵检查思路及其命令 转自https://yq.aliyun.com/articles/24250?spm=5176.100239.blogcont24249.12.rbBrIh

    摘要: 若Linux操作系统被非法入侵,那么有哪些思路和系统命令用于检查系统当前的状态呢?主要包括对关键进程.关键服务.关键文件的检测,同时及时备份硬盘数据用于持续分析.详细的检查思路和Linux命令 ...

  5. asp.net mvc js 获取model值。

    cshtml页面部分代码: div class="col-sub">          @using (Html.BeginForm("SaveTTMallConf ...

  6. kali-dmitry 域名信息收集

    DMirty:用来收集以下信息: 1. 端口扫描 2. whois主机IP和域名信息 3. 从Netcraft.com获取主机信息 4. 子域名 5. 域名中包含的邮件地址 1.使用方法: Deepm ...

  7. React JSX语法说明

    原文:http://my.oschina.net/leogao0816/blog/379487 什么是JSX? 在用React写组件的时候,通常会用到JSX语法,粗看上去,像是在Javascript代 ...

  8. js封装、简单实例源码记录

    1.运动封装:doMove ( obj, attr, dir, target, endFn )  加入回调.&&.||用法注释 <script> var oBtn1 = d ...

  9. TCP 常用总结

    SO_RCVBUF SO_SNDBUF TCP socket在内核中都有一个发送缓冲区和一个接收缓冲区,不管进程是否读取socket,对端发来的数据都会经由内核接收并且缓存到socket的内核接收缓冲 ...

  10. 浅谈人脸检测之Haar分类器方法

    我们要探讨的Haar分类器实际上是Boosting算法(提升算法)的一个应用,Haar分类器用到了Boosting算法中的AdaBoost算法,只是把AdaBoost算法训练出的强分类器进行了级联,并 ...