基本上都會想到中心擴散,但是這個中心擴散有個奇數偶數的問題,所以優化了下,借用了部分馬拉車演算法的思想 解決問題,記憶體消耗還可以優化。初版解決問題為先。
<?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 需進一步優化 改為迭代形式 分析過程 遞迴過程 暴力遞迴窮舉 備忘錄優化 構造遞迴遍歷 二叉樹遍歷...