Leetcode: Longest Palindromic Substring

原创 2016年08月31日 16:30:22
//初始化dp数组 dp[i][j]=(i>=j)?true:false;
//状态转移方程 dp[i][j] =(s[i]==s[j])? dp[i+1][j-1] : false;
class Solution {
public:
   string longestPalindrome(string s) {
        int n=s.size();
        bool dp[n][n];
        for(int i=0;i<n;i++){
            for(int j=0;j<n;j++){
                if(i>=j){
                    dp[i][j]=true;
                }
                else{
                    dp[i][j]=false;
                }
            }
        }
        int max_=1;
        int start=0;
        for(int j=1;j<n;j++){
            for(int i=0;i<j;i++){
                if(dp[i+1][j-1] && s[i]==s[j]){
                    dp[i][j]=true;
                    if(j-i+1>max_){
                        start=i;
                        max_=j-i+1;
                    }
                }
            }
        }
        return s.substr(start,max_);
    }
};

版权声明:本文为博主原创文章,欢迎指教~

LeetCode(5) Longest Palindromic Substring

如果一个字符串从左向右写和从右向左写是一样的,这样的字符串就叫做palindromic string,如aba,或者abba。给定输入一个字符串,要输出一个子串,使得子串是输入字符串的最长的padro...
  • feliciafay
  • feliciafay
  • 2013年11月27日 14:00
  • 17810

LeetCode Longest Palindromic Substring 最长回文子字符串 两种方法分析解答

最难想的地方:P代表一个表,比较难想的就是P表的下标i和j代表原字符串中的两个前后下标s[i]和s[j]的位置。 如果P[i,j]为真,当且仅当si-1,si-2...sj-1,sj这一个子串都为pa...
  • kenden23
  • kenden23
  • 2013年11月23日 10:27
  • 2865

【LeetCode-面试算法经典-Java实现】【005-Longest Palindromic Substring(最长回文子串)】

【005-Longest Palindromic Substring(最长回文子串)】给定一个字符串S,找出它的最大的回文子串,你可以假设字符串的最大长度是1000,而且存在唯一的最长回文子串。动态规...
  • DERRANTCM
  • DERRANTCM
  • 2015年07月17日 06:42
  • 2561

【LeetCode】Longest Palindromic Substring 解题报告

DP、KMP什么的都太高大上了,自己想了个朴素的遍历方法。 【题目】 Given a string S, find the longest palindromic substring in S. ...
  • ljiabin
  • ljiabin
  • 2014年10月26日 15:17
  • 4352

[leetcode: Python]5.Longest Palindromic Substring

题目: Given a string s, find the longest palindromic substring in s. You may assume that the maximum ...
  • NXHYD
  • NXHYD
  • 2017年05月17日 10:32
  • 277

[LeetCode]5 Longest Palindromic Substring(C++,Python实现)

LeetCode OJ的第五题,如果有问题或者给我指点欢迎来信讨论ms08.shiroh@gmail.com 题目描述...
  • Shiroh_ms08
  • Shiroh_ms08
  • 2014年05月23日 21:28
  • 3108

Leetcode 5. Longest Palindromic Substring 新补充Manacher算法

5. Longest Palindromic Substring Total Accepted: 98755 Total Submissions: 434700 Difficulty: Medi...
  • fantasiasango
  • fantasiasango
  • 2016年03月15日 09:34
  • 519

[LeetCode] 005. Longest Palindromic Substring (Medium) (C++/Java/Python)

[LeetCode] 005. Longest Palindromic Substring (Medium) (C++/Java/Python)
  • hcbbt
  • hcbbt
  • 2015年02月28日 00:09
  • 2912

leetcode -- Longest Palindromic Substring -- 重点,有O(n)思路未理解

https://leetcode.com/problems/longest-palindromic-substring/思路1遍历所有s[i], 当回文串长度为奇数的时候,判断以其为中点的回文串的长度...
  • xyqzki
  • xyqzki
  • 2015年12月12日 21:30
  • 349

LeetCode 5:Longest Palindromic Substring

Given a string S, find the longest palindromic substring in S. You may assume that the maximum len...
  • sunao2002002
  • sunao2002002
  • 2015年05月12日 00:38
  • 2637
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Leetcode: Longest Palindromic Substring
举报原因:
原因补充:

(最多只允许输入30个字)