• [LeetCode][Python]Reverse Integer


    # -*- coding: utf8 -*-
    '''
    __author__ = 'dabay.wang@gmail.com'
    https://oj.leetcode.com/problems/reverse-integer/

    Reverse digits of an integer.

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

    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?
    For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.

    ===Comments by Dabay===
    先简单是否是负数,用minus来记录。
    然后把字符串reverse。
    最后检查是否越界。
    '''
    class Solution:
    # @return an integer
    def reverse(self, x):
    if len(x) <= 1:
    return x
    x = str(x)
    minus = False
    if x[0] == '-':
    minus = True
    x = x[1:]
    stack = []
    for n in x:
    stack.append(n)
    ret = ""
    while len(stack) > 0:
    ret = ret + stack.pop()
    ret = int(ret)
    if minus:
    ret = ret * -1
    if ret < -2147483647:
    return 0
    else:
    if ret > 2147483647:
    return 0
    return ret


    def main():
    s = Solution()
    print s.reverse("-2147483648")


    if __name__ == "__main__":
    import time
    start = time.clock()
    main()
    print "%s sec" % (time.clock() - start)
  • 相关阅读:
    python 取整的两种方法
    django class-based view 考古
    django缓存基于类的视图
    MySQL参数优化案例
    django后台使用MySQL情况下的事务控制详解
    讲讲python“=”运算符上的优雅语法
    p标签不折行的问题
    django-TDD
    session 和 flask_session 实现原理(源码解析)
    网关地址和网关IP是什么,他们有什么关系?
  • 原文地址:https://www.cnblogs.com/Dabay/p/4222813.html
Copyright © 2020-2023  润新知