如何求字串裡的最長回文子串

2021-09-26 06:55:42 字數 527 閱讀 5988

str="abcdefgfedxyz"

n=len(str)

res=

for i in range(n):

for j in range(i,n):

if list(str[i:j+1])==list(reversed(str[i:j+1])):

res=list(set(res))

max=len(res[0])

k=len(res)

for i in range(k):

if len(res[i])>max:

max=len(res[i])

index=i

print(res[index])

1. 這個題目,我使用的是最普通的蠻力法,從字串的頭部開始乙個乙個的找回文串,一直到最後找出最長的回文子串。

2. 這裡我用到乙個reversed方法,使用reversed方法後得到的結果要用list來裝入,要不然得不到正確的輸出。

3. 後面如果還有更高階的方法,還會做更新。

字串 最長回文子串

最長回文子串 回文子串 即正著看和倒著看相同的子串,如 abcba yyxyy。由於此類題目為面試筆試常考題目,所以現在就來整理一下啦。1 暴力求解法 最直接的想法就是暴力求解,但是我們可以看到下面的 時間複雜度是o n 3 string findlongeststring string str 暴...

字串 最長回文子串

介紹一下幾個概念 就是從左往右和從右往左讀是一樣的。就如標語 我為人人,人人為我 子串,顧名思義,就是在原字串中的子集,就叫子串。串就是不能分割的,就是連在一起,這個要區別與子串行,子串行就是一段 一段的。列舉各個起點和終點,然後進行判斷該子串是否為回文,最後就是更新最長的回文串。列舉起點和終點 o...

字串 最長回文子串

給定乙個字串 s,找到 s 中最長的回文子串。你可以假設 s 的最大長度為 1000。示例 1 輸入 babad 輸出 bab 注意 aba 也是乙個有效答案。示例 2 輸入 cbbd 輸出 bb 思路 用manacher class solution int max 1 int res 0 儲存最...