反转整数7

题目:给定一个 32 位有符号整数,将整数中的数字进行反转。

输入:123

输出:321

注:会有负数,且输出范围为,如果反转后的整数溢出,则返回 0

思路:先将整数转换为list,再利用list的反转,最后判断输出范围

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class (object):
def reverse(self, x):
"""
:type x: int
:rtype: int
"""
if not x:
return x
x_str = str(abs(x))
x_reverse = int(x_str[::-1])

if x < 0:
x_reverse = -x_reverse
if x_reverse > -2**31 and x_reverse < 2**31 - 1:
return x_reverse
return 0


print(Solution().reverse(-123))