zoukankan      html  css  js  c++  java
  • leetcode

    整数反转

    给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
    如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0。
    假设环境不允许存储 64 位整数(有符号或无符号)。

    示例 1:

    输入:x = 123
    输出:321
    

    示例 2:

    输入:x = -123
    输出:-321
    

    示例 3:

    输入:x = 120
    输出:21
    

    示例 4:

    输入:x = 0
    输出:0
    

    解法一

    用到的知识点:切片

    class Solution:
        def reverse(self, x: int) -> int:
            if -10 < x < 10:
                return x
            str_x = str(x)
            if str_x[0] != '-':
                x = int(str_x[::-1])
            else:
                x = int(str_x[:0:-1])
                x = -x
            return x if -2147483648 < x < 2147483647 else 0
    
    

    执行用时:44 ms
    内存消耗:15 MB

    解法二

    知识点:地板除、取余

    class Solution:
        def reverse(self, x: int) -> int:
            if x == 0:
                return 0
            flag = False
            if x < 0:
                flag = True
                x = -x
            rev = 0
            while x > 0:
                rev = rev * 10 + x % 10
                x = x // 10
            if flag:
                rev = -rev
            if rev >= pow(2,31) - 1 or rev <= - pow(2, 31):
                return 0
            return rev
    
    x = -28815415
    s = Solution()
    print(s.reverse(x))
    

    执行用时:36 ms
    内存消耗:15 MB

    更多学习笔记移步 https://www.cnblogs.com/kknote
  • 相关阅读:
    jmeter单一接口测试
    mac os下载安装jmeter
    十、集成使用redis
    Java之Poi导出Excel文档
    134. Gas Station (Array; DP)
    53. Maximum Subarray (Array; DP)
    36. Valid Sudoku (Array; HashTable)
    37. Sudoku Solver (Array;Back-Track)
    52. N-Queens II (Array; Back-Track)
    51. N-Queens (Array; Back-Track, Bit)
  • 原文地址:https://www.cnblogs.com/kknote/p/15033577.html
Copyright © 2011-2022 走看看