领扣算法:7 整数反转

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

示例 1:

输入: 123
输出: 321

 示例 2:

输入: -123
输出: -321

示例 3:

输入: 120
输出: 21

输入的参数:public int reverse(int x)

解决步骤:

    1.定义一个rev=0 当做初始值 , 123 每次得到末位数 123 % 10 得到末位数  之后 将值123/10 继续遍历下一个末位数  

    2.判断是否溢出,溢出返回0

    3.将整数反转,rev = rev * 10 + pop

代码:

public class ReverseNum {

    public static void main(String[] args) {
        int x = 34567;
        int rs = reverse(x);
        System.out.println(rs);
    }
    public static int reverse(int x) {
        int rev = 0;
        while(x!=0) {

            int pop = x % 10;
            x = x / 10;
            if (x > Integer.MAX_VALUE || x < Integer.MIN_VALUE) return 0;
            rev = rev * 10 + pop;
        }
            return rev;

    }
}

运行截图:

领扣算法:7 整数反转_第1张图片

你可能感兴趣的:(面试算法—简单)