leetcode 7. 反转整数

给定一个 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://www.chenxm.cc/post/712.html

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 给定一个 32 位有符号整数,将整数中的数字进行反转。 示例 1: 输入: 123输出: 321示例 2: 输入:...
    在做算法的nobody阅读 1,144评论 0 0
  • 给定一个 32 位有符号整数,将整数中的数字进行反转。 示例 1: 示例 2: 示例 3: 注意:假设我们的环境只...
    WindMajor阅读 1,826评论 0 0
  • Reverse digits of an integer. Example1: x = 123, return 3...
    Jeffbond阅读 3,828评论 1 2
  • 算法描述 : 算法实现 : Java实现 :
    程慕枫阅读 1,599评论 0 0
  • 滑落的雨闪亮在发梢 一个人悲伤从头到脚 灰茫城市里哪里会有你 相遇彼此已经素不相识 隔开多久忘记时间和距离 长长远...
    鑫垚淼阅读 1,027评论 0 0