07.leetcode题目讲解(Python):反转整数

题目如下:

题目

这个题比较简单,一种是通过数学的方法:x % 10 ,x // 10 来循环构建反转整数,一种是转换为str后进行处理。 需要注意的两点:

  1. 如果输入整数只有一位,那么可以直接将输入输出不进行处理。
  2. 处理转换后的溢出。

参考代码如下:

class Solution:
    def reverse(self, x):
        """
        :type x: int
        :rtype: int
        """

        sx = str(x)
        if len(sx) == 1:
            return x
        sx = sx[::-1]
        if sx[0] == '0':
            sx = sx[1:]
        if sx[-1] == '-':
            sx = sx[:-1]
            sx = '-' + sx

        rev_int = int(sx)
        if rev_int <= 2 ** 31 - 1 and rev_int >= -(2 ** 31):
            return rev_int
        else:
            return 0


# test:
s = Solution()
print(s.reverse(120))

ps:如果您有好的建议,欢迎交流 :-D,也欢迎访问我的个人博客:tundrazone.com

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

推荐阅读更多精彩内容