Leetcode 7 : Reverse Integer - python版本

博客围绕给定的32位有符号整数反转问题展开,给出Python代码并以123为例详细分析代码执行过程,通过不断取余和整除操作实现数字反转,最终得到反转后的数字。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:
Given a 32-bit signed integer, reverse digits of an integer.

在这里插入图片描述
python代码:

class Solution:
    def reverse(self, x: int) -> int:
        Res = 0  
        flag = 1 
        if x<0:
            x = abs(x)
            flag = -1 
        while x != 0:
            Res = Res*10+x%10
            x = x//10
        if -2147483648 < Res < 2147483647:
            return Res*flag
        else:
            return 0

分析上面的代码:
拿123为例子
第一步:
Res = Res10+x%10
= 0
10 + 123%10
= 0 + 3
= 3
x = x // 10
= 123 // 10
= 12

第二步:
Res = Res10 + x%10
= 3
10 + 12%10
= 30 + 2
= 32
x = x // 10
= 12 // 10
= 1

第三步:
Res = Res10 + x%10
= 32
10 + 1%10
= 320 + 1
= 321
x = x //10
= 1 // 10
= 0

return Res x flag = 321 x 1 = 321


这样就能把数字转换过来。

如果觉得不错,就点赞或者关注或者留言~
谢谢~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值