ARTS打卡计划第一周-Algorithm

7. Reverse Integer

import math
class Solution:
    def reverse(self, x: int) -> int:
        ret = 0
        if x >=0:
            x_str = str(x)
            ret =  int(x_str[::-1])
        else:
            x =abs(x)
            x_str=str(x)
            ret =  -1*int(x_str[::-1])
        if ret>=math.pow(2,31)-1 or ret<=-1*math.pow(2,31):
                return 0
        else:
            return ret

if __name__ == '__main__':
    s = Solution()
    print(s.reverse(123))
    print(s.reverse(-123))
    print(s.reverse(120))
    print(s.reverse(-120))
    print(s.reverse(1534236469))

  这里出错的基本都是题目没看清楚,题目说的是如果反转溢出后返回0。这里主要的思路就是将数字转化为字符串,对字符串反转并且保持符号位。

猜你喜欢

转载自www.cnblogs.com/dongqiSilent/p/10739318.html