Reverse Integer(lintcode 413)

Description

Reverse digits of an integer. Returns 0 when the reversed integer overflows (signed 32-bit integer).

Example

Given x = 123, return 321

Given x = -123, return -321

Interface

public class Solution {
    /**
     * @param n the integer to be reversed
     * @return the reversed integer
     */
    public int reverseInteger(int n) {
        // Write your code here
    }
}

Idea

Almost same as Palindrome Number, except that we have to check overflow in the loop.

Solution

public class Solution {
    /**
     * @param n the integer to be reversed
     * @return the reversed integer
     */
    public int reverseInteger(int n) {
        // Write your code here
        int reversedN = 0;
        while (n != 0) {
            int temp = reversedN * 10 + n % 10;
            n /= 10;
            if (temp / 10 != reversedN) {
                reversedN = 0;
                break;
            }
            reversedN = temp;
        }
        return reversedN;
    }
}

results matching ""

    No results matching ""