leecode最長回文子串

2021-09-29 13:09:42 字數 855 閱讀 3700

基本上都會想到中心擴散,但是這個中心擴散有個奇數偶數的問題,所以優化了下,借用了部分馬拉車演算法的思想 解決問題,記憶體消耗還可以優化。初版解決問題為先。

<?php

class

solution

$str

=$tmp

;echo

$str

;for($i

=0;$i

<

strlen

($str);

$i++

)return

$this

->

format()

;}public

function

format()

}return

$new_str;}

public

function

judge

($str,$k

)$i=$j

=$k;$i

--;$j++

;$tmp

=$str[$k

];while

($str[$i

]==$str[$j

])elseif(

$j<

strlen

($str))

else

$tmp

=$ltmp

.$tmp

.$rtmp;}

if(strlen

($tmp

)>

$this

->

high)}

}

2019-11-12 轉行第三年零二十三天

LeeCode筆記 5 最長回文子串

給定乙個字串 s,找到 s 中最長的回文子串。你可以假設 s 的最大長度為 1000。示例 1 輸入 babad 輸出 bab 注意 aba 也是乙個有效答案。示例 2 輸入 cbbd 輸出 bb 使用動態規劃,dp i j 是從j到i的子串是否是回文串 值為true或false dp i i 肯定...

leecode刷題2 最長回文子串

給定乙個字串s,找到s中最長的回文子串。你可以假設s的最大長度為1000。最開始的想法是暴力求解最長的回文子串,具體的思路如下 class solution for int i 0 ifor int j i jif plaindrome temp result.length return resul...

leecode 5 最長回文子串 遞迴解法

動態規劃,本質上就是 帶備忘錄的遞迴的計算過程。遞迴過程為 自頂向下的問題拆解和自底向上的問題計算。迭代形式的動態規劃,略過問題拆解,直接計算,能節省一定的時空。本題中,因遞迴法的時空效率太差 擊敗5 需進一步優化 改為迭代形式 分析過程 遞迴過程 暴力遞迴窮舉 備忘錄優化 構造遞迴遍歷 二叉樹遍歷...