1. 程式人生 > >[leetcode]9. Palindrome Number

[leetcode]9. Palindrome Number

acc ret rem elf body urn gre case progress

簡單題,如果不轉string要犧牲一些時間復雜度:

Submission Detail

11509 / 11509 test cases passed. Status:

Accepted

Runtime: 128 ms Memory Usage: 13.2 MB Submitted: 1 minute ago
class Solution:
    def isPalindrome(self, x: int) -> bool:
        # solve it without converting the integer to a string
# deal 0 if x==None: return False if x < 0: return False if x == 0: return True # noraml order = [] while (True): remain = x % 10 div = x // 10 if div == 0 and remain ==0:
break else: order.append(remain) x = x // 10 # is Palindrome # notice lengthS >= lengthS = len(order) if lengthS % 2 == 1: # odd list1 = order[0:lengthS // 2 + 1] list2 = order[lengthS // 2:] list2.reverse()
for index in range(len(list1)): if list1[index] == list2[index]: if index == len(list1) -1: return True else: # no palindrome return False else: # even list1 = order[0:lengthS // 2] list2 = order[lengthS // 2:] list2.reverse() for index in range(len(list1)): if list1[index] == list2[index]: if index == len(list1)-1: return True else: # no palindrome return False

[leetcode]9. Palindrome Number