leetcode日記 5 最長回文子串

2021-10-10 13:13:46 字數 2835 閱讀 6078

示例 1:

輸入: "babad"

輸出: "bab"

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

示例 2:

輸入: "cbbd"

輸出: "bb"

中間往兩邊法的思路很簡單,就是說找到乙個正確的核心起點,然後判斷最近的左右是否滿足條件,如果滿足就把帶上這兩個點的當做新的中間.

需要注意的是存在兩種核心起點,1. 單個的字元 2. 相同的兩個字元,而且這兩種的判斷邏輯會有區別,所以我分開處理了

好久沒寫dp了,就寫寫感覺.

dp需要乙個明確的起始點(邊界條件),和乙個明確的遞推關係,遞推關係要能覆蓋所有情況.

再找到這兩點之後,題目的邏輯就和dp沒關係了,dp就變成了純粹的數字遊戲.,用符號來代替題目想找到的結果.

值得注意的是,dp的方法會把所有的情況都判斷一次,所以速度並非是最快的,他只是通過狀態轉移的方式進行計算而已.(是不是有合理的剪枝空間?

LeetCode5 最長回文串

include include include include include include using namespace std ifndef solution h define solution h 思路 從回文串的對稱點開始,依次向左向右比較,不相同的時候停止遍歷,直到找出最大的長度的回文...

LeetCode 最長回文子串 5

給定乙個字串 s,找到 s 中最長的回文子串。你可以假設 s 的最大長度為 1000。示例 1 輸入 babad 輸出 bab 注意 aba 也是乙個有效答案。示例 2 輸入 cbbd 輸出 bb 方法一 暴力法 時間複雜度為o n 3 會超時 思路 最笨的方法,遍歷所有子串s,並判斷s的反轉s 與...

LeetCode 5 最長回文串

目錄 1.題目描述 2.解決方案 給定乙個字串s,找到s中最長的回文子串。你可以假設s的最大長度為 1000。示例 1 輸入 babad 輸出 bab 注意 aba 也是乙個有效答案。示例 2 輸入 cbbd 輸出 bb 方法一 動態規劃 演算法 用二位陣列來標記字串從下標 i 到下標 j 是否為回...