给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。
感觉这题应该是考察数字和字符串之间的转换以及字符串的逆转,知道这些操作再写代码就没啥问题了。
class Solution:
def reverse(self, x: int) -> int:
is_negative = False
if x<0:
is_negative = True
x = abs(x)
x = '%d' %x
x = int(x[::-1])
if x>=2**31:
return 0
if is_negative:
x *= -1
return x
可能代码还可以更简练,欢迎评论!