天天看点

【LeetCode】7. Reverse Integer - Java实现

      • 1. 题目描述:
      • 2. 思路分析:
      • 3. Java代码:

1. 题目描述:

Given a 32-bit signed integer, reverse digits of an integer.

Example 1:

Input: 123

Output: 321

Example 2:

Input: -123

Output: -321

Example 3:

Input: 120

Output: 21

Note:

Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [−231, 231 − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.

2. 思路分析:

题目的意思很简单,就是逆转一个整数。

思路就是通过取模和除以10运算来去除各个位上的数重新生成一个逆转的数就可以了。

注意: 需要判断逆转后的数是否越界。

3. Java代码:

源代码

:见我GiHub主页

代码:

public static int reverse(int x) {
    long result = ;
    while (x != ) {
        int pop = x % ;
        result = result *  + pop;
        if (result > Integer.MAX_VALUE || result < Integer.MIN_VALUE) {
            return ;
        }
        x /= ;
    }
    return (int)result;
}