题目:
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
示例 1:
输入: 123
输出: 321
示例 2:
输入: -123
输出: -321
示例 3:
输入: 120
输出: 21
注意:
假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。
题目的理解:
将整数转化为字符串,然后将字符串的每一个字符存入数组,翻转数组后转化为字符串,然后再转化为整数。
python实现
class Solution:
def reverse(self, x: int) -> int:
minus = True if x < 0 else False
result = str(abs(x))
result_arr = list()
for character in result:
result_arr.append(character)
result_arr.reverse()
result_reverse = ''.join(result_arr)
result_num = int(result_reverse)
if minus:
if -result_num < -2**31:
return 0
return -result_num
if result_num > (2**31 - 1):
return 0
return result_num
提交
成功感觉写的有点啰嗦了
// END 明天开工的人好多啊,我们公司还没有想法!_!
网友评论