我試着寫一個遞歸功能,說如果一個字符串是迴文,但我得到的是一個無限循環,我不知道是什麼問題迴文的遞歸函數
def isPalindrome(S):
listush=list(S) #listush=['a', 'b', 'n', 'n', 'b', 'a']
length=len(listush) #length=6
if length==0 or length==1:
return S, "is a palindrome!"
elif listush[0]!=listush[-1]:
return S, "is not a palindrome!"
else:
del listush[0]
del listush[-1]
return isPalindrome(S)
print isPalindrome("abnnba")
'del listush [0]'和'listush [-1]'不會從'S'中刪除字符,該列表與'S'無關。您將原始字符串傳遞給遞歸而不刪除前後字符。 – dhke