Problem

Reverse digits of an integer. Returns 0 when the reversed integer overflows (signed 32-bit integer).

Example

Given x = 123, return 321

Given x = -123, return -321

Note

这道题有一些细节需要留意。新数res会不会溢出?符号位如何处理?
用惯用的做法,n除以10取余,得到最低位cur,放进res。每次循环res乘以10累加当前最低位cur,同时n除以10不断减小。
要点在于考虑res乘10累加运算的情况,用分支语句判断发生溢出的条件。不能直接写if (res * 10 + cur > Integer.MAX_VALUE),因为res * 10就有可能会溢出了;而要用(Integer.MAX_VALUE - cur) / 10,因为只有减法和除法,结果不可能溢出。
最后的结果要加上之前排除的符号位。

Solution

public class Solution {public int reverseInteger(int n) {boolean isNeg = n < 0;n = isNeg ? -n : n;int res = 0;while (n != 0) {int cur = n % 10;if (res >= (Integer.MAX_VALUE - cur) / 10) return 0;res = res * 10 + cur;n /= 10;}return isNeg ? -res : res;}
}

[LintCode] Reverse Integer相关推荐

  1. [LeetCode] Number of 1 Bits Reverse Integer - 整数问题系列

    目录: 1.Number of 1 Bits  - 计算二进制1的个数 [与运算] 2.Contains Duplicate - 是否存在重复数字 [遍历] 3.Reverse Integer - 翻 ...

  2. [Leetcode] Reverse Integer

    Reverse Integer 题解 题目来源:https://leetcode.com/problems/reverse-integer/description/ Description Given ...

  3. LeetCode 7 Reverse Integer(反转数字)

    题目来源:https://leetcode.com/problems/reverse-integer/ Reverse digits of an integer. Example1: x = 123, ...

  4. JAVA怎么将整数反转_【leetcode刷题】[简单]7.反转整数(reverse integer)-java

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

  5. LeetCode - 7. Reverse Integer

    7. Reverse Integer Problem's Link ------------------------------------------------------------------ ...

  6. (7)-(Reverse Integer)-(将整数按位反转成另外一个整数,考虑溢出)-(知道最大整数和最小整数值)...

    (7)-(Reverse Integer)-(将整数按位反转成另外一个整数,考虑溢出)-(知道最大整数和最小整数值)//Reverse digits of an integer.//Example1: ...

  7. 【翻转整数考虑溢出】LeetCode 7. Reverse Integer

    LeetCode 7. Reverse Integer Solution1:最笨的方法 class Solution {public:int reverse(int x) {if (!x) retur ...

  8. LeetCode in Python-7. Reverse Integer 整数反转

    Reverse Integer 整数反转 题目 解法1.利用数值反转数字 解法2.字符串反转 解法3. 出处 题目 解法1.利用数值反转数字 class Solution:def reverse(se ...

  9. lintcode :reverse integer 颠倒整数

    题目: 颠倒整数 将一个整数中的数字进行颠倒,当颠倒后的整数溢出时,返回 0 (标记为 32 位整数). 样例 给定 x = 123,返回 321 给定 x = -123,返回 -321 解题: 直接 ...

最新文章

  1. Hibernate中get方法和load方法的区别
  2. 利用蒙特卡罗法,国外老哥成功制造出 100% 投篮命中的篮板!
  3. ylbtech-Unitity-CS:Hello world
  4. FAST UA API
  5. 在Python 中 a=a+b 与 a+=b 区别,你真的知道嘛?
  6. c语言realloc函数中写啥,求大神解惑realloc函数,谢谢!
  7. ai中如何插入签名_技巧不求人167期 Excel如何打印到1页纸的2种方法 Excel如何插入手写签名...
  8. 【RK3399Pro学习笔记】十三、ROS中的坐标系管理系统
  9. 【Pytorch神经网络理论篇】 27 图神经网络DGL库:简介+安装+卸载+数据集+PYG库+NetWorkx库
  10. 程序员小抄 (转载自酷壳,一个专注技术的博客)
  11. jsp - 9 内置对象application详解
  12. 分布式事务与2PC、3PC理论详解
  13. python连续读取邮件_Python读取指定日期邮件的实例
  14. kernel oops_Java中的OOPS概念– OOPS概念示例
  15. 使用异步存储提升 Web 应用程序的离线体验
  16. 【工具推荐】Adobe Reader 设置高亮颜色及深浅
  17. 2023天津大学土木水利专业考研成功经验分享
  18. JSP登录中Session的用法
  19. c语言劝学,11劝学.doc
  20. java坦克大战案例_JAVA实现经典坦克大战源代码

热门文章

  1. 一直在构建工作空间_大华股份殷俊:AI,构建数字世界的基础
  2. python编程从入门到实战类的定义_Python编程:从入门到实践—类
  3. mysql innodb 内存_MySQL的innodb和内存
  4. android 模块自动加载,Android 之ko模块的自动加载
  5. 一致 先验分布 后验分布_分布式事务常见解决方案与最终一致性
  6. java 字符串赋值_Java 学习笔记(二)变量
  7. 自己写的计算时间坐标的代码
  8. Hibernate检索1
  9. 高新面试系列 性格篇
  10. nginx源码分析--使用GDB调试