美文网首页北美程序员面试干货
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