python中回文設計 Python中的回文遞迴

2021-10-11 20:40:33 字數 1451 閱讀 2165

我正在編寫乙個python**,其中我必須使用遞迴來測試列表是否是回文,並且遇到**中的混亂和問題:def ispalindrome( thesublist ) :

thesublisttest = thesublist[0:]

if len(thesublisttest) <= 1:

return true

elif len(thesublisttest) == 2:

x = thesublisttest[0]

y = thesublisttest[1]

if x == y:

return true

else:

return false == thesublisttest.pop(0)

elif len(thesublisttest) > 2:

first = thesublisttest.pop(0)

last = thesublisttest.pop()

if first == last:

return ispalindrome(thesublisttest)

else:

return false

def maxpalindrome( thelist ) :

completelist=thelist[:]

completelist.reverse()

complete=len(thelist)-1

for i in range(complete):

if completelist[:]==thelist[:]:

x=len(thelist)

y=0return(x,y)

elif completelist[i:complete]==thelist[i:complete]:

successlist=thelist[i:complete]

a=ib=len(thelist)-a

return (a,b)

thelisttest = thelist[0:]

if thelisttest:

return (0,0)

# test

candidateps = [

[1,],

range(8),

range(4)+range(3,-1,-1),

range(4)+[0]+range(3,-1,-1),

range(3)+range(4)+[0]+range(3,-1,-1),

[8,3,2,3],

for p in candidateps :

print p, ispalindrome( p )

print p, "max", maxpalindrome( p )

我不確定我所做的是否被認為是遞迴,我也知道[8,3,2,3]應該顯示max(3,1),我的**將其輸出為max(0,0)

任何對我的**的幫助都會有很大的幫助。在

最大回文子串manacher演算法python

關於最大回文子串問題,有兩種處理方法 1.以每個字元為中心,向兩邊尋找回文子串,遍歷整個陣列後,返回最長的。該方法時間複雜度較大為o n 2 2.乙個中等難度的動態規劃演算法 馬拉車 step1 給每個字元左右都加上特殊字元比如 處理後,能使字串s長度為奇 step2 現在的問題變成如何高效求得rl...

python中建立類role 初識Python類

吐槽 學習物件導向就像你追乙個女神一樣,剛剛有點感覺了,過幾天又陷入絕望的感覺,很蛋疼。類的語法 classperson object print learning class test person test就是類person的例項化物件 例項化,就是以person類為模板,在記憶體裡開闢一塊空間...

在python中輸出 在輸出中列印Python版本

如何從指令碼中列印當前python安裝的版本號?嘗試import sys print sys.version 這將列印完整的版本資訊字串。如果您只想要python版本號,那麼bastien l onard的解決方案是最好的。您可能想檢查完整的字串,看看是否需要它或它的一部分。import platf...