leetcode第7题 整数反转(C++)

原题链接:7. 整数反转 - 力扣(LeetCode)

给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。

如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。

假设环境不允许存储 64 位整数(有符号或无符号)。

示例 1:

复制代码
输入:x = 123
输出:321

示例 2:

复制代码
输入:x = -123
输出:-321

示例 3:

复制代码
输入:x = 120
输出:21

示例 4:

复制代码
输入:x = 0
输出:0

提示:

  • -231 <= x <= 231 - 1

题目本身不难,但是有坑,emmmm,要防止溢出问题,这边没对示例三有一个过多说明,没必要,字符串类型转换到longlong类型后默认开头的0删除了的

复制代码
class Solution {
public:
    int reverse(int x) {
        string num=to_string(x);
        if(num[0]=='-'){
            std::reverse(num.begin()+1,num.end());//前面加了std是因为函数名的问题,在力扣模式下要加这个才能正常使用reverse函数
        }else{
            std::reverse(num.begin(),num.end());
        }
        long long result=stoll(num);//使用stoll函数将字符串转换为longlong型数据
        if(result>INT_MAX || result<INT_MIN){//溢出则返回0
            return 0;
        }
        return (int)result;
    }
};
相关推荐
路小雨~2 小时前
机器学习基础算法学习笔记
学习·算法·机器学习
Tony沈哲2 小时前
OpenVitamin 整体架构设计—— 一个本地 AI 推理平台是如何构建的
算法·llm·agent
数据皮皮侠2 小时前
1095 《中国城市统计年鉴》面板数据整理
大数据·数据库·人工智能·算法·制造
寒月小酒3 小时前
3.26 OJ
数据结构·算法
汉克老师3 小时前
GESP5级C++考试语法知识(十二、递归算法(二))
c++·算法·记忆化搜索·时间复杂度·递归算法·gesp5级·gesp五级
lcreek3 小时前
计算机网络与图算法:从理论到实践
算法·
sinat_255487813 小时前
JSON·学习笔记
java·开发语言·笔记·算法
Yupureki3 小时前
《算法竞赛从入门到国奖》算法基础:动态规划-基础线性dp
c语言·开发语言·算法·动态规划
Roselind_Yi3 小时前
从线性回归实战到Python依赖安装踩坑:我的机器学习入门排雷记
笔记·python·算法·机器学习·回归·线性回归·学习方法