博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode刷题 7 反转整数 Reverse Integer(简单) Python Java
阅读量:4129 次
发布时间:2019-05-25

本文共 1395 字,大约阅读时间需要 4 分钟。

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

示例 1:

输入: 123

输出: 321

示例 2:

输入: -123

输出: -321

示例 3:

输入: 120

输出: 21

注意:

       假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。在写代码时一直报错,后来发现是缩进问题,Python是对缩进要求很严格的语言,一定要注意。

class Solution(object):    def reverse(self, x):        """        :type x: int        :rtype: int        """        # 判断是否为个位数,是个位数则不用反转,直接返回        if -10 < x < 10:            return x        # 把整数x转为字符串        str_x = str(x)        # 判断第一个是否为负号        if str_x[0] != "-":            # 不是负号则直接反转            str_x = str_x[::-1]            # str转为int            x = int(str_x)        else:            # 是负号,则反转负号之后的字符串            str_x = str_x[1:][::-1]            # str转int            x = int(str_x)            # 加上负号            x = -x        # 三目运算符,判断是否溢出        # 如果-2147483648 < x < 2147483647则返回x,否则返回0        return x if -2147483648 < x < 2147483647 else 0if __name__ == '__main__':    s = Solution()    reverse_int = s.reverse(-120)    print(reverse_int)

 

以下是Java版本

public class Reverse1 {	 public int reverse(int x) {	        long tmp = x;	        // 防止结果溢出	        long result = 0;                //逆序输出	        while (tmp != 0) {	            result = result * 10 + tmp % 10;	            tmp = tmp / 10;	        }	        // 溢出判断 	        if (result < Integer.MIN_VALUE || result > Integer.MAX_VALUE) {	            result = 0;	        }	        return (int) result;	    }}

 

转载地址:http://hiuvi.baihongyu.com/

你可能感兴趣的文章
3.5 YOLO9000: Better,Faster,Stronger(YOLO9000:更好,更快,更强)
查看>>
iOS菜鸟学习--如何避免两个按钮同时响应
查看>>
How to access the keys in dictionary in object-c
查看>>
iOS菜鸟学习—— NSSortDescriptor的使用
查看>>
hdu 3787 hdoj 3787
查看>>
hdu 3790 hdoj 3790
查看>>
hdu 3789 hdoj 3789
查看>>
hdu 3788 hdoj 3788
查看>>
zju 1003 zoj 1003
查看>>
zju 1004 zoj 1004
查看>>
zju 1005 zoj 1005
查看>>
zju 1006 zoj 1006
查看>>
【虚拟机】虚拟化架构与系统部署(Windows系统安装)
查看>>
字节跳动安卓开发实习生面试分享
查看>>
好书分享之——《能力陷进》
查看>>
阅读笔记《c++ primer》
查看>>
阅读笔记《C++标准程序库》
查看>>
基于mirror driver的windows屏幕录像
查看>>
C语言8
查看>>
Qt实现简单延时
查看>>