2.Leetcode7 Reverse Integer 解题随笔

1:题目描述

Given a 32-bit signed integer, reverse digits of an integer

逆序输出数字,范围-2**31~2**32-1

2:解题思路(

class Solution(object):

    def reverse(self, x):
        """
        :type x: int
        :rtype: int
        """
        if x>0:       #判断正负数
            str_x=str(x)   #将数字转为字符串
            reverse_x=int(str_x[::-1]) #逆序排列字符串并转为数字
            if reverse_x>2**31-1:      #判断数字是否溢出
                return 0
            return reverse_x    #返回值
        else :
            str_x=str(-1*x)
            reverse_x=-int(str_x[::-1])
            if reverse_x<=-2**31 or x==0:
                return 0
            else:
                return reverse_x

4:解题收获

①学会使用字符反转函数

②溢出指的是输出而不是输入

原文地址:https://www.cnblogs.com/19991201xiao/p/8395362.html