[LeetCode]7-反转整数

7. 反转整数
给定一个 32 位有符号整数,将整数中的数字进行反转。
示例 1: 123 -> 321
示例 2: -123 -> -321
示例 3: 120 -> 21
注意:
假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。

Python3 示例代码

class Solution:
    def reverse(self, x):
        minus = (x < 0)
        num = x
        if minus:
            num = x * (-1)
        num_unit = []
        while num > 0:
            unit = num % 10
            num_unit.append(unit)
            num = num // 10
            
        result = 0
        for i in range(0, len(num_unit)):
            result = result + num_unit[i] * 10 ** (len(num_unit) - 1 - i)
        if minus:
            result = result * (-1)
        
        if result > 2**31 -1 or result < -2 ** 31:
            return 0
        else:
            return result

你可能感兴趣的:([LeetCode]7-反转整数)