1. 程式人生 > >leetcode第9題

leetcode第9題

題目:判讀迴文數 可以剪枝,直接判斷負數,0,和能被10整除的數 c++:

bool isPalindrome(int x) {
        if(x < 0)
            return false;
        if(x == 0)
            return true;
        if(x % 10 == 0)
            return false;
        int temp = 0;
        int num = x;
        while(x)
        {
            temp = temp * 10 + x % 10
; x = x / 10; } return (num == temp) ? true : false; }

python: 解法一:

    def isPalindrome(self, x):
        str1 = str(x)
        length = len(str1)
        i = 0
        while(i <= length // 2):
            if(str1[i] != str1[length - i - 1]):
                return False
i += 1 return True

解法二:一行

def isPalindrome(self, x):
        return str(x) == str(x)[::-1]