leetcode刷题-----7. 整数反转

栏目: 编程工具 · 发布时间: 6年前

内容简介:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。来源:力扣(LeetCode)链接:

题目:

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。

  • 示例 1:

    输入: 123

    输出: 321

  • 示例 2:

    输入: -123

    输出: -321

  • 示例 3:

    输入: 120

    输出: 21

注意:

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

来源:力扣(LeetCode)

链接: https://leetcode-cn.com/probl...

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解答:

class Solution(object):
    def reverse(self, x):
        """
        :type x: int
        :rtype: int
        """
        max0 = 2**31-1
        min0 = -(2**31)
        symbol = True
        if x > max0 or x < min0:
            return 0
        if x < 0:
            symbol = False
            x = -x
        int_x = str(x)
        raw = int_x[::-1]
        raw = int(raw)
        if raw > max0:
            return 0
        if not symbol:
            return -raw
        return raw

关键:

  1. 将整数转换为字符串进行切片反转
  2. 注意溢出
  3. 注意符号

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

你不知道的JavaScript(上卷)

你不知道的JavaScript(上卷)

[美] Kyle Simpson / 赵望野、梁杰 / 人民邮电出版社 / 2015-4 / 49.00元

JavaScript语言有很多复杂的概念,但却用简单的方式体现出来(比如回调函数),因此,JavaScript开发者无需理解语言内部的原理,就能编写出功能全面的程序;就像收音机一样,你无需理解里面的管子和线圈都是做什么用的,只要会操作收音机上的按键,就可以收听你喜欢的节目。然而,JavaScript的这些复杂精妙的概念才是语言的精髓,即使是经验丰富的JavaScript开发者,如果没有认真学习也无......一起来看看 《你不知道的JavaScript(上卷)》 这本书的介绍吧!

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具