时间:2022-2-27
题目地址:力扣
题目难度:Medium
题目描述:
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−2 **31, 2**31 − 1] ,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。
思路1:弹出和推入数字
代码段1:通过
class Solution:
def reverse(self, x: int) -> int:
result = 0
x_pos = abs(x)
boundry = (1 << 31) - 1 if x > 0 else 1 << 31
while x_pos != 0:
result = result * 10 + x_pos % 10
x_pos //= 10
if result > boundry:
result = 0
result = result if x > 0 else -result
return result
总结:
- 常用api还是得熟悉