reverse-integer

reverse-integer

https://www.nowcoder.com/practice/1a3de8b83d12437aa05694b90e02f47a?tpId=46&&tqId=29171&rp=1&ru=/activity/oj&qru=/ta/leetcode/question-ranking

将给出的整数x翻转。
例1:x=123,返回321
例2:x=-123,返回-321

你有思考过下面的这些问题么?
如果整数的最后一位是0,那么输出应该是什么?比如10,100
你注意到翻转后的整数可能溢出吗?假设输入是32位整数,则将翻转10000000003就会溢出,你该怎么处理这样的样例?抛出异常?这样做很好,但是如果不允许抛出异常呢?这样的话你必须重新设计函数(比如添加一个额外的参数)。

python的整型不会溢出,以下内容来自百度知道:
尽管在C语言中,整型所表示的大小是有范围的,但是python代码是保存到文本文件中的,也就是说,python代码中并不是一下子就转化成 C 语言的整型的,我们需要重新定义一种数据结构来表示和存储我们新的“整型”。

我的python解法:

class Solution:
    def reverse(self , x ):
        # write code here

        flag = False
        if x == 0 or x == -0:
            return x
        if x < 0:
            x = -x
            flag = True
        x = str(x)


        reverse_x = ""
        for i in range(len(x)):
            if reverse_x == "" and x[len(x)-i-1] == "0":
                continue
            reverse_x += x[len(x)-i-1]
        reverse_x = int(reverse_x)
        if flag:
            reverse_x = -reverse_x
        return reverse_x
全部评论

相关推荐

炫哥_:为什么都读硕士了?项目还是网上的项目(真心发问)
最后再改一次简历
点赞 评论 收藏
分享
07-10 14:08
已编辑
江西农业大学 Java
念旧select:做完把项目放到自己硬盘里给他看,看完拷走
点赞 评论 收藏
分享
07-11 11:10
门头沟学院 Java
请问各位大三兄弟们跟hr说多久实习时间到时候可以提前跑路吗?
程序员小白条:问就是六个月以上,可以一年,实习都这样,你入职后想跑就跑
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务