美文网首页北美程序员面试干货
LeetCode 7 [Reverse Integer]

LeetCode 7 [Reverse Integer]

作者: Jason_Yuan | 来源:发表于2016-08-03 13:02 被阅读27次

    原题

    将一个整数中的数字进行颠倒,当颠倒后的整数溢出时,返回 0 (标记为 32 位整数)。

    样例
    给定 x = 123,返回 321
    给定 x = -123,返回 -321

    解题思路

    • 同样是获取每一位,滚动生成新的数
    • 注意要考虑新的数值溢出的问题

    完整代码

    class Solution(object):
        def reverse(self, x):
            """
            :type x: int
            :rtype: int
            """
            if x >= 0:
                res = self.helper(x)
            else:
                res =  -self.helper(-x)
            return res if -2147483648 <= res <= 2147483647 else 0
            
        def helper(self, num):
            res = 0
            while num > 0:
                res *= 10
                res += num % 10
                num /= 10
            return res
    

    相关文章

      网友评论

        本文标题:LeetCode 7 [Reverse Integer]

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