leetcode 7. 整数反转

https://leetcode-cn.com/problems/reverse-integer/

class Solution {
    public int reverse(int xx) {
        
        if (xx == 0) {
            return xx;
        }
        boolean minus = false;
        long x = xx;
        if (xx < 0) {
            minus = true;
            x *= -1;
        }
        int n = ((int) Math.log10(x)) + 1;
        long pow = 1;
        for (int i = 1; i < n; i++) {
            pow *= 10;
        }
        long result = 0L;
        for (int i = n; i > 0; i--) {
            result += pow * (x % 10);
            pow /= 10;
            x /= 10;
        }
        if(result>Integer.MAX_VALUE){
            return 0;
        }
        return minus ? -1 * (int)result : (int)result;
    }
}

你可能感兴趣的:(算法研究)