题目
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−231 , 231 − 1] ,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。
Python实现
class Solution:
def reverse(self, x: int) -> int:
y, res = abs(x),0
p_bd, n_bd = 2**31-1,-2**31
while y !=0:
res = res*10+y%10
if res> p_bd or res<n_bd: return 0
y//=10
return res if x >0 else -res
Golang实现
func reverse(x int) int {
if x<0{
return -reverse(-x)
}
var res int = 0
for x !=0{
tmp := x%10
res = res*10+ tmp
if res > math.MaxInt32 || res < math.MinInt32{
return 0
}
x/=10
}
return res
}
}