算法(7)Reverse Integer

Given a 32-bit signed integer, reverse digits of an integer.

Example 1:

Input: 123
Output: 321

Example 2:

Input: -123
Output: -321

Example 3:

Input: 120
Output: 21

Note:
Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [−231,  231 − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.

 

class Solution:
    def reverse(self, x):
        """
        :type x: int
        :rtype: int
        """
        ret = 0        
        n = abs(x)

        while (n != 0):
            pop = n % 10
            n = int(n / 10)

            ret = ret * 10 + pop

        if x < 0:
            ret = 0 - ret

        return ret if abs(ret) <= 2 ** 31 - 1 else 0
点赞