leetcode7.整数反转-Java

题目


给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。

如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0。

假设环境不允许存储 64 位整数(有符号或无符号)。

7. 整数反转 - 力扣(LeetCode)

思路


题目给了我们一个整数x,我们需要把他进行反转,对于这个x,我们需要每次弹出x最低位,将最低位插

入到result的末尾。这样,x的低位就变成了result的高位,也就完成了反转。

需要注意的是我们要判断当前的结果是否越界。
 

代码 

class Solution {
    public int reverse(int x) {
        int result=0;
        int INT_MAX=Integer.MAX_VALUE;
        int INT_MIN=Integer.MIN_VALUE;
        while(x!=0){
            int num=x%10;
            x/=10;
 
            if (result>INT_MAX/10 || (result==INT_MAX/10 && num > INT_MAX%10)){
                return 0;
            }
 
            if (result

你可能感兴趣的:(算法,算法,数据结构)