Reverse digits of an integer.

Example1: x = 123, return 321
Example2: x = -123, return -321

问题描述: 将整数个十百位反序输出。

注意特殊情况:

1)溢出情况:To check for overflow/underflow, we could check if ret > 214748364 or ret < –214748364 before multiplying by 10. On the other hand, we do not need to check if ret == 214748364, why?

2)正数、负数除10 余10的情况;

3)10,100这样的数反序时可不可以用一般的程序处理。

代码:

public class Solution {
    public int reverse(int x) {
        int max = Integer.MAX_VALUE;
        int min = Integer.MIN_VALUE;
        long res = 0;
        while(x!=0){
            int n = x%10;
            res = res *10 + n;
            x = x/10;
            if(res>max || res<min)
                return 0;
        }
        int res1 = (int) res;
        return res1;
    }
}

 

相关文章:

  • 2021-05-17
  • 2021-10-31
  • 2021-07-01
  • 2021-11-16
  • 2021-10-28
  • 2022-02-14
猜你喜欢
  • 2021-09-18
  • 2021-10-16
  • 2021-11-01
  • 2021-07-08
  • 2021-11-02
  • 2022-01-14
  • 2021-11-18
相关资源
相似解决方案