zoukankan      html  css  js  c++  java
  • 7. 整数反转

    题目自己去官网看吧!

    主要是这几点

    1. 我们要保证数字翻转

    2. 保证前后符号位不发生变化

    3. 保证我们处理后的数据在-2147483648~2147483648范畴内

    我刚看到就突然想到使用str来处理此问题,不通过数学方式的计算,直接用文本去拼接

    最后结果是内存消耗较为严重,13.6MB,目测全部都是string字符和list占用的

    接下来优化,试着用Number去处理

    class Solution:
        # -2147483648~2147483648
        def reverse(self, x: int) -> int:
            xstr = str(x)
            result = []
            up = False
            if(x < 0):
                up = True
                xstr = xstr.strip('-')
            length = len(xstr)
            for i in range(length):
                result.append(xstr[length - i - 1])
            data = int('-' + ''.join(result) if up else ''.join(result))
            return data if data < 2147483648 and data > -2147483648 else 0
    
    
    if __name__ == "__main__":
        solution = Solution()
        rw = solution.reverse(1534236469)
        print(rw)
  • 相关阅读:
    《linux 必读》
    ldd ldconfig
    rpm 数据库
    /bin, /sbin & /usr/bin, /usr/sbin & /usr/local/bin, /usr/local/sbin & glibc
    POSIX
    CentOS 下载地址
    insert into TABLE by SELECT ...
    httpd 处理模型
    http 状态码
    IP地址 0.0.0.0 是什么意思?
  • 原文地址:https://www.cnblogs.com/kongkongFabian/p/13895844.html
Copyright © 2011-2022 走看看