题目描述
给你一个 32 位的有符号整数 x
,返回将 x
中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1]
,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。
示例 1:
示例 2:
示例 3:
示例 4:
提示:
题目思路
Java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| class Solution { public int reverse(int x) { int result = 0; while (x != 0){ int temp = x % 10; if(result > Integer.MAX_VALUE / 10 || (result == Integer.MAX_VALUE / 10 && temp > 7)){ return 0; } if(result < Integer.MIN_VALUE / 10 || (result == Integer.MIN_VALUE / 10 && temp > 8)){ return 0; } result = result * 10 + temp; x = x / 10; } return result; } }
|