回文串最大长度

Posted bananaa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了回文串最大长度相关的知识,希望对你有一定的参考价值。

1)lettcode题目:

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.
class Solution {
public:
//以每个字符为中心,向左右拓展,找最大回文串
string expandAroundCenter(string s , int c1, int c2){ int l=c1, r=c2; int n=s.length(); while(l>=0&&r<n&&s[l]==s[r]){ l--; r++; } return s.substr(l+1,r-l-1); } string longestPalindrome(string s) { int n=s.length(); if(n==0) return ""; string longest=s.substr(0,1); for(int i=0;i<n-1;i++){ string p1=expandAroundCenter(s,i,i); if(p1.length()>longest.length()) longest=p1; string p2=expandAroundCenter(s,i,i+1); if(p2.length()>longest.length()) longest=p2; } return longest; } };

 



以上是关于回文串最大长度的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode5最大回文子串(中心扩散法)

Manachar算法详解

马拉车算法

BZOJ3676: [Apio2014]回文串

BZOJ 3676 [Apio2014]回文串(回文树)

[bzoj 3676][Apio2014]回文串