首页 > 其他 > 详细

Leetcode篇:整数反转

时间:2018-09-18 21:24:54      阅读:169      评论:0      收藏:0      [点我收藏+]

@author: ZZQ
@software: PyCharm
@file: IntReverse.py
@time: 2018/9/16 16:36
要求:整数反转(给定一个 32 位有符号整数,将整数中的数字进行反转)
e.g.: 输入: 123 输出: 321
输入: -123 输出: -321
输入: 120 输出: 21
【假设我们的环境只能存储 32 位有符号整数,其数值范围是 [?2^31, 2^31 ? 1]。
根据这个假设,如果反转后的整数溢出,则返回 0。】
需考虑:反转以后数组越界问题

import math

def main(x):
    m = 0
    if x > 0:
        n = x
        flag = 1
    else:
        n = -x
        flag = -1
    while n > 0:
        m = m * 10 + n % 10
        n = n / 10
        # print m, n
    m = m * flag
    if m > (math.pow(2, 31)-1):
        return 0
    if m < - math.pow(2, 31):
        return 0
    return m


if __name__ == "__main__":
    n = 123456789
    print main(n)

    n = -123
    print main(n)

Leetcode篇:整数反转

原文:https://www.cnblogs.com/zzq-123456/p/9671307.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!