题目描述
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。
解题代码
func reverse(x int) int {
sum := ""
if x > 0 {
s := strconv.Itoa(x)
length := len(s)
for i, _ := range s {
sum += string(s[length - i -1])
}
atoi, _ := strconv.Atoi(sum)
if atoi > 2147483647 {
return 0
}
return atoi
} else {
s := strconv.Itoa(x)
s2 := s[1:]
length := len(s2)
for i, _ := range s2 {
sum += string(s2[length - i -1])
}
atoi, _ := strconv.Atoi(sum)
atoi *= -1
if atoi < -2147483648 {
return 0
}
return atoi
}
}