题目:Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
Note:
The input is assumed to be a 32-bit signed integer. Your function should return 0 when the reversed integer overflows.
class Solution(object):
def reverse(self, x):
result = 0
xx = 0
if x<0:
xx = (-1)*x
else:
xx = x
while xx>0:
result = result*10+xx%10
xx = xx/10
if result>=2147483648 or result<-2147483648:
return 0
if x<0:
return (-1)*result
if x>=0:
return result
直接上源码,先判断数字符号,然后不停取出输入的最后一位并删除。在result中,把得到的每一位数字依次往前推,具体做法是乘以10并加上下一个取出的末位。通过的结果如下图。