题目描述:

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。

示例:

输入: 123
输出: 321
输入: -123
输出: -321
输入: 120
输出: 21

注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231,  231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。

思路分析:

这道题是easy,实际上思路是比较简单的,首先用一个数组逆向的存储整数各位,再遍历一次数组,重新构建一遍即可。但是由于这个整数溢出问题,我也磕磕绊绊提交了多次,主要还是自己基础不够扎实。这里需要注意的是如何对于整数溢出进行判断,参考了一个博客的相关内容:https://blog.csdn.net/xiaomingZeng/article/details/80526607

另外也有一些题解采用了更加简洁的方法,没有用我这种这么直接的方式去判断溢出,算是比较巧妙的。可以参考博客:https://www.cnblogs.com/wmx24/p/9149916.html

代码:

 class Solution {
public:
int reverse(int x) {
if(x>INT_MAX || x<INT_MIN )
return ;
vector<int> num;
while(x!=)
{
int tmp = x%;
num.push_back(tmp);
x = x/;
}
int res = ;
int base = ;
for(int i=num.size()-; i>=; i--)
{ if(num[i] > INT_MAX/base || num[i] < INT_MIN/base)
return ;
if(num[i]<)
{
if(base*num[i] < INT_MIN - res)
return ;
}
else if(num[i]>)
{
if(base*num[i] > INT_MAX - res)
return ;
}
res += num[i]*base;
if(i>)
{
if(base >= INT_MAX/)
return ;
else
base *= ;
}
}
return res;
}
};

leetcode:7. 整数反转的更多相关文章

  1. 前端与算法 leetcode 7. 整数反转

    目录 # 前端与算法 leetcode 7. 整数反转 题目描述 概要 提示 解析 解法 算法 传入测试用例的运行结果 执行结果 GitHub仓库 # 前端与算法 leetcode 7. 整数反转 题 ...

  2. Java实现 LeetCode 7整数反转

    7. 整数反转 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: ...

  3. Leetcode 7. 整数反转(待整理)

    1.题目描述 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321  示例 2: 输入: -123 输出: -321 示例 3: 输入: ...

  4. 【LeetCode】整数反转【不能借助辅助空间,需要处理溢出】

    给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: ...

  5. 【一起刷LeetCode】整数反转

    前言&絮叨 别人都忙着参加年会晒奖品,我却忙着写代码.每逢年底都要安排几个紧急项目,我什么时候能摆脱这种宿命. 在忙也不能忘记刷LeetCode,毛毛向前冲!!! 题目描述 给出一个 32 位 ...

  6. [LeetCode] 7. 整数反转

    题目链接:https://leetcode-cn.com/problems/reverse-integer/ 题目描述: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 ...

  7. LeetCode:整数反转(Reserve Integer)

    public class ReserveInteger { public int reverse(int x) { //用于接收个位数(10的余数) int remainder; //是否负数 int ...

  8. 力扣(LeetCode)整数反转 个人题解

    给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: ...

  9. <每日 1 OJ> -LeetCode 7. 整数反转

    题目描述 给定一个 32 位有符号整数,将整数中的数字进行反转. 示例 1: 输入: 123 输出: 321  示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 ...

  10. [LeetCode]7. 整数反转(Java)

    原题地址: reverse-integer 题目描述: 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果. 如果反转后整数超过 32 位的有符号整数的范围 [−2^31,  ...

随机推荐

  1. python基础--数据结构之字典

    字典 特点:无序,键唯一 目录 1.字典的创建 2. .setdefault 的使用 3.  字典中的查找 4.字典中的改 5. 字典中的删除 6. 打印字典的方法 7. 格式化字符串 8. 合并字符 ...

  2. .net core web api 默认的模型验证

    转载自 https://www.codercto.com/a/45938.html

  3. Vue – 基础学习(3):$forceUpdate()和$nextTick()的区别

    Vue – 基础学习(3):$forceUpdate()和$nextTick()的区别

  4. Java 流程控制语句 之 顺序结构

    在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说,程序的流程对运行结果 有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过控制语句的执行顺序来实 ...

  5. PostgreSql那点事(文件读取写入、命令执行的办法)

    • 2013/07/9 作者: admin PostgreSql那点事(文件读取写入.命令执行的办法) 今天无意发现了个PostgreSQL环境,线上学习了下,一般的数据注射(读写数据库)差异不大,不 ...

  6. delay timer的wrap around

    span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }.CodeMirror ...

  7. 程序员式优雅表白,教你用python代码画爱心

    还能用python代码画爱心?还有这种操作?这是什么原理? 不相信python代码可以画爱心?先来一张效果图来看看效果吧! 用python代码画爱心的思路是怎样的? 1.怎么画心形曲线 2.怎么填满心 ...

  8. CString写的web server

    socket通信机制 文件加载机制 手抄代码 test\\2017

  9. js动画--缓冲动画

    前面讲述的动画速度都是匀速的,现实生活中的运动速度的变化不一定是恒定的,存在一定的缓冲,就像火车进站一样,速度会越来越慢. 对于改变速度措施,其实只要将动画第一课的程序稍微的改变一下就可以了,我们来看 ...

  10. python基础语法11 内置模块time,datatime,random,os,sys,hashlib模块

    time模块 在python的三种时间表现形式: 1.时间戳: 给电脑看的. - 自1970-01-01 00:00:00到当前时间,按秒计算,计算了多少秒. 2.格式化时间(Format Strin ...