zoukankan      html  css  js  c++  java
  • [leetcode]颠倒整数

    题目描述:

    给定一个 32 位有符号整数,将整数中的数字进行反转。

    示例 1:

    输入: 123
    输出: 321
    

     示例 2:

    输入: -123
    输出: -321
    

    示例 3:

    输入: 120
    输出: 21
    

    注意:

    假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231,  231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。

    题目分析:

    可以把int类型转换为string类型,用切片法翻转string,最后在转换为int类型,注意最高位的正负号,为负数时要将负号保留,不能反转到后面

    class Solution(object):
        def reverse(self, x):
            """
            :type x: int
            :rtype: int
            """
            if x is None:
                return x
            x_str = str(x)
            if x_str[0] == "-":
                x_str_tmp = x_str[1:]
                x_int = int(x_str[0] + x_str_tmp[::-1])
            else:
                x_int = int(x_str[::-1])
            if x_int < -2147483648 or x_int > 2147483648:
                return 0
            else:
                return x_int
  • 相关阅读:
    列表推导式,生成器表达式
    迭代器,生成器初始
    装饰器的进阶
    函数名用途,初始装饰器
    函数参数,和空间
    py文件的操作
    字符串相关操作
    python基础二
    Django简介
    Django初识
  • 原文地址:https://www.cnblogs.com/ralap7/p/9044848.html
Copyright © 2011-2022 走看看