0
下面的代碼是針對Leetcode上的編碼練習 - 我檢查一個數字是否是迴文(不將它轉換爲字符串)。我無法理解爲什麼像11號,22,33等檢查一個數字是否是迴文 - 11,22等失敗
def isPalindrome(self, x):
#x is an integer
digit = 0
reverse = 0
#Single digit numbers will be palindromes
if x >= 0 and x < 10:
return True
#fetch individual digits and build the reverse number
while x > 0:
digit = x % 10
reverse = (reverse * 10) + digit
x = x/10
if x == reverse:
return True
else:
return False
您在循環中反覆修改'x',然後嘗試在之後的比較中使用它。這永遠不會爲多位數字返回「真」。 – Phylogenesis
@Phylogenesis這也是事實,但還不夠。 OP,在你心目中運行代碼22 ..你沒有注意到它有什麼問題嗎?像'reverse =(reverse * 10)+ digit'還是'x = x/10'? –
我有多傻!感謝您清除那個 – user1528508