python leetcode 7. 反转整数

 Pala   2018-09-18 10:39   88 人阅读  0 条评论

给定一个 32 位有符号整数,将整数中的数字进行反转。

示例 1:

输入: 123
输出: 321

 示例 2:

输入: -123
输出: -321

示例 3:

输入: 120
输出: 21

注意:

假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231,  231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。

解决思路:

  1.  先把整数转换成字符串

  2.  如果是负数,那么不取第0位,进行数字反转,然后变成整数,进行拼接

  3. 判断结果是否在−231,  231 − 1范围类

  4. 参考:Python 实现字符串反转的9种方法

代码1

class Solution(object):
    def reverse(self, x):
        """
        :type x: int
        :rtype: int
        """
        new_x = str(x)
        if new_x.startswith('-'):
            res = -+int(str(x)[:0:-1])
        else:
            res = int(str(x)[::-1])
        if -2**31 < res < 2**31-1:
            return res
        return 0



本文地址:http://chenxm.cc/post/712.html
版权声明:本文为原创文章,版权归 Pala 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?