美文网首页
7 Reverse Integer

7 Reverse Integer

作者: Closears | 来源:发表于2015-08-09 11:43 被阅读229次

    原题链接:Reverse Integer
    先上代码:

    class Solution:
        # @param {integer} x
        # @return {integer}
        def reverse(self, x):
            x = str(x)
            if x[0] in ['+', '-']:
                x = int(str(x[1:])[::-1]) if x[0] == '+' else -int(str(x[1:])[::-1])
            else:
                x = int(str(x)[::-1])
            if (x > 2 ** 31 - 1) or (x < -2 ** 31):
                x = 0
            return x
    

    说明:
    核心解决方案是把传入的整型转换为字符串,然后反转字符串再转回整型。(点击查看反转字符串的方法
    注意一下最后的if判断,即if (x > 2 ** 31 - 1) or (x < -2 ** 31):。之所以这样写是因为题目要求如果反转的数溢出,就返回0。然而对于Python来说,整型范围是无限大的,所以不会溢出(不准确但无须深究),因此我们要模拟一下溢出情况下的返回值。

    相关文章

      网友评论

          本文标题:7 Reverse Integer

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