Leetcode07-整数反转

思路一:整数转化成字符串,字符串反转,最后再转化成整数

细节:如果是负数,负号需要单独处理。

python 复制代码
class Solution:
    def reverse(self, x: int) -> int:
        if x < 0:
            x = str(x)[1:]
            x = x[::-1]
            x = '-' + x
        else:
            x = str(x)
            x = x[::-1]
        if int(x) > 2**31-1 or int(x) < -2**31:
            return 0
        else:
            return int(x)

思路2:利用整除和取余运算符

细节:需要区分正数和负数,可以引入一个flag标记,如果为正数,flag=1;如果为负数,flag=-1.

python 复制代码
class Solution:
    def reverse(self, x: int) -> int:
        res = 0
        flag = 1
        if x < 0:
            flag=-1
            x = -x
        while x != 0:
            res = res * 10 + x % 10
            x //= 10
        if res < -2**31 or res > 2**31-1:
            return 0
        return res* flag
相关推荐
MediaTea6 小时前
AI 术语通俗词典:C4.5 算法
人工智能·算法
Navigator_Z6 小时前
LeetCode //C - 1033. Moving Stones Until Consecutive
c语言·算法·leetcode
WBluuue6 小时前
数据结构与算法:莫队(一):普通莫队与带修莫队
c++·算法
风筝在晴天搁浅7 小时前
n个六面的骰子,扔一次之后和为k的概率是多少?
算法
MATLAB代码顾问8 小时前
Python实现蜂群算法优化TSP问题
开发语言·python·算法
代码飞天8 小时前
机器学习算法和函数整理——助力快速查阅
人工智能·算法·机器学习
jiushiapwojdap9 小时前
LU分解法求解线性方程组Matlab实现
数据结构·其他·算法·matlab
笨笨饿9 小时前
69_如何给自己手搓一个串口
linux·c语言·网络·单片机·嵌入式硬件·算法·个人开发
纽扣6679 小时前
【算法进阶之路】链表进阶:删除、合并、回文与排序全解析
数据结构·算法·链表
消失的旧时光-194310 小时前
统一并发模型:线程、Reactor、协程本质是一件事(从线程到协程 · 第6篇·终章)
java·python·算法