【LeetCode】【Python题解】Reverse Integer

Reverse digits of an integer.

Example1: x = 123, return 321
Example2: x = -123, return -321

click to show spoilers.

Have you thought about this?

Here are some good questions to ask before coding. Bonus points for you if you have already thought through this!

If the integer‘s last digit is 0, what should the output be? ie, cases such as 10, 100.

Did you notice that the reversed integer might overflow? Assume the input is a 32-bit integer, then the reverse of 1000000003 overflows. How should you handle such cases?

Throw an exception? Good, but what if throwing an exception is not an option? You would then have to re-design the function (ie, add an extra parameter).


题目大意就是要翻转一个整数,但是提示了两点需要考虑的问题,一个是末尾是0的,还有一个是翻转后会越界,用c++编可能处理起来麻烦一些,然而用Python就非常简单,直接将其转成str类型来处理,并调用内置函数reverse,而且转为int时它会自动处理首位带的零,非常简单。但是我的程序没有处理是否越界的问题,但是依然AC


class Solution:
    # @return an integer
    def reverse(self, x):
        if x<0:
            sign = -1
        else:
            sign = 1
        strx=str(abs(x))
        r = strx[::-1]
        return sign*int(r)


【LeetCode】【Python题解】Reverse Integer

上一篇:组合模式之C++实现


下一篇:【编程之美】java实现重建二叉树