【LeetCode】07.整数反转

题目要求

解题思路

这道题的难点在于怎么判断越界,我们无法直接与最大值或最小值比较,但是由于每一次我们的ret都需要乘10这个特性来使用ret与最大值或最小值除10进行比较

代码实现

cpp 复制代码
class Solution 
{
public:
    int reverse(int x) 
    {
        int ret=0;
        while(x)
        {
            //处理越界情况
            if(ret<INT_MIN/10||ret>INT_MAX/10)
                return 0;
            ret=ret*10+x%10;
            x/=10;
        }
        return ret;
    }
};
相关推荐
H Corey30 分钟前
数据结构与算法:高效编程的核心
java·开发语言·数据结构·算法
programhelp_1 小时前
2026 Adobe面试全流程拆解|OA/VO/Onsite实战指南+高频考点避坑
adobe·面试·职场和发展
SmartBrain1 小时前
Python 特性(第一部分):知识点讲解(含示例)
开发语言·人工智能·python·算法
01二进制代码漫游日记1 小时前
自定义类型:联合和枚举(一)
c语言·开发语言·学习·算法
小学卷王2 小时前
复试day25
算法
样例过了就是过了2 小时前
LeetCode热题100 和为 K 的子数组
数据结构·算法·leetcode
二年级程序员2 小时前
单链表算法思路详解(下)
c语言·数据结构·算法
HAPPY酷2 小时前
C++ 成员指针(Pointer to Member)完全指南
java·c++·算法
Sunsets_Red2 小时前
浅谈随机化与模拟退火
java·c语言·c++·python·算法·c#·信息学竞赛
Felven2 小时前
A. Add and Divide
数据结构·算法