[LeetCode] 7. Reverse Integer

题:https://leetcode.com/problems/reverse-integer/description/

题目

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.

思路

题目大意

将数 s 翻转,要求:
1.保留相应的 正负号。
2.x的尾部作为0,翻转后舍去。

code

class Solution:
    def reverse(self, x):
        """
        :type x: int
        :rtype: int
        """
        flag = 1
        if x<0 :
            flag = -1
            x = -x
        res = 0 
        while x:
            v = x%10
            res = res * 10 + v
            x  //= 10
        return res * flag*(res < 2**31)

猜你喜欢

转载自blog.csdn.net/u013383813/article/details/82414461