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;
}
}