给你一个 32 位的有符号整数 x ,返回 x 中每位上的数字反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。
class Solution:
def reverse(self, x: int) -> int:
num = 0
a = abs(x)
while(a != 0):
temp = a % 10 #取当前num的最低位
num = num * 10 + temp #将当前最低位放到存储的最低位,变化后为最高位
a = int(a/10) #去掉本次取出的最低位,方便下次进行取数, 或者a//10
if x > 0 and num < 2147483647:
return num
if x < 0 and num <= 2147483647:
return -num
else:
return 0
x = Solution()
print(x.reverse(432))