LeetCode 5 Longest Palindromic Substring

来源:互联网 发布:花生壳域名免费注册 编辑:程序博客网 时间:2024/05/04 18:06

Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring.


求最长回文子串的串。

我还用的是老方法,o(n^2)的算法,好理解。

class Solution {public:    string longestPalindrome(string s)    {        s.insert(0,1,'$');        int mstart,mend;        int ans=0;        int mansi=1,mansj=1;        for(int i=1;i<s.length();i++)        {                mstart=mend=i;                while(s[mend+1]==s[i])                        mend++;                i=mend;                while(s[mstart-1]==s[mend+1])                        mstart--,mend++;                if(ans<mend-mstart+1)                {                        mansi=mstart;                        mansj=mend;                        ans=mend-mstart+1;                }        }        string ret="";        for(int i=mansi;i<=mansj;i++)                ret+=s[i];        return ret;    }};



0 0
原创粉丝点击