LeetCode 7.整数翻转

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

示例 1:
输入: 123
输出: 321

示例 2:
输入: -123
输出: -321

示例 3:
输入: 120
输出: 21

注意:

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

JAVA实现

class Solution {
    public int reverse(int x) {
    if (x > Integer.MAX_VALUE || Math.abs(x) > Integer.MAX_VALUE) {
            return 0;
        }
        long res = 0;
        int tmp = Math.abs(x);
        while (tmp > 0) {
            res *= 10;
            res += tmp % 10;
            if (res > Integer.MAX_VALUE){
                return 0;
            }
            tmp /= 10;
        }
        return (int)(x > 0 ? res : -res );
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 题目描述: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1: 输入: 123输...
    我就是李先森阅读 212评论 0 1
  • 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1: 示例 2: 示例 3: 注意...
    dreamkong阅读 463评论 0 1
  • 1.反转字符串 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要...
    neo_ming阅读 628评论 0 0
  • 前言 本系列,希望使用Python通关LeetCode,暂时开始做简单题。初次刷LeetCode目的是为了提高自己...
    3inchtime阅读 1,579评论 1 1
  • 星期三 今天天气依然晴朗 温度突然升高了几度 空气中弥漫着春天的气息 仿佛在告诉人们冬已远离 春已到来。 今天依然...
    柴敏_70ab阅读 140评论 0 1