5 最長回文子串

2021-10-03 12:47:48 字數 643 閱讀 4511

給定乙個字串 s,找到 s 中最長的回文子串。你可以假設 s 的最大長度為 1000。

輸入: "babad"

輸出: "bab"

注意: "aba" 也是乙個有效答案。

輸入: "cbbd"

輸出: "bb"

class

solution

return ans;

}void

helper

( string& s,

int left,

int right, string& ans )

int cursize = right - left -1;

// 如果到這一步,說明left和right處已經不合法了,要麼除了字串的邊界,要麼兩頭的字元不相等了。所以回文子串的長度為(right-1)-(left+1)+1

if( cursize > ans.

size()

)// 如果當前的回文子串長度大於ans,更新ans

ans = s.

substr

( left+

1, cursize )

;return;}

};

5 最長回文子串

給定乙個字串s,找到s中最長的回文子串。你可以假設s長度最長為1000。示例 輸入 babad 輸出 bab 注意 aba 也是有效答案示例 輸入 cbbd 輸出 bb 方法1 用馬拉車演算法 字串動態規劃 來求最長回文子串時間複雜度可以達到o n 但是部落格裡面有個小失誤 這個id應該不是最大回文...

5 最長回文子串

給定乙個字串s,找到s中最長的回文子串。你可以假設s的最大長度為1000。示例 1 輸入 babad 輸出 bab 注意 aba 也是乙個有效答案。示例 2 輸入 cbbd 輸出 bb class solution def longestpalindrome self,s k len s olist...

5 最長回文子串

給定乙個字串s,找到s中最長的回文子串。你可以假設s的最大長度為 1000。示例 1 輸入 babad 輸出 bab 注意 aba 也是乙個有效答案。示例 2 輸入 cbbd 輸出 bb 這道題比較船艇的應該是dp求法,但鄙人的dp特別特別的差勁。所以我選用中心擴充套件演算法,掃一遍所有節點,把被掃...