Leetcode刷题记录——7.整数反转

在这里插入图片描述

本题比较简单,可以转换为字符串操作

class Solution:
    def reverse(self, x: int) -> int:
        if x == 0:#若输入为0,返回0
            return 0
        isNeg = False#标记输入是否为负数
        tempstr = str(int(x))#转换为字符串
        if tempstr [0] == '-':#若输入为负数,我们保留符号,只对纯数字部分进行反转
            tempstr = tempstr[1:]
            isNeg = True
        resstr = tempstr[::-1]#反转操作
        index = 0#获取反转后的纯数字部分中第一个不为0的位置
        while resstr[index] == '0':
            index += 1
        resstr = resstr[index:]
        if isNeg is True:
            resstr = '-' + resstr#恢复负号
        res = int(resstr)
        return 0 if ((res > 2**31) or (res <-(2**31)-1)) else res#判断是否在要求范围

        
发布了43 篇原创文章 · 获赞 14 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_41545780/article/details/105107976