美文网首页
9. Palindrome Number 回文数

9. Palindrome Number 回文数

作者: sarto | 来源:发表于2022-03-12 23:50 被阅读0次

    题目

    给一个整数 x,如果 x 是回文数,返回 true。例如,

    • 121 true
    • -121 false
    • 123 false

    解析

    首先,负数肯定不是回文数。如何判断是回文数呢,可以考虑最后按位相等, 其实更直接的,如果是回文数,反向之后,这两个数字是相等的。所以只需要将这个数字反向。
    反向的时候注意溢出,如果溢出的话,说明肯定不是回文数。

    代码

    func isPalindrome(x int) bool {
        rev := 0
        rx := x
        if x < 0 {
            return false
        }
        for ; x!=0 ; {
            rev = rev*10 + x%10
            x = x/10
            if rev > (1<<31-1) {
                return false
            }
        }
        return rx == rev
        
    }
    

    相关文章

      网友评论

          本文标题:9. Palindrome Number 回文数

          本文链接:https://www.haomeiwen.com/subject/katrdrtx.html