Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
Note:
The input is assumed to be a 32-bit signed integer. Your function should return 0 when the reversed integer overflows.
Subscribe to see which companies asked this question.
简单题
难点在溢出
和计算机组成原理里面的东西可能绕晕你
class Solution {
public:
int reverse(int x) {
int max =2147483647;
int min=-2147483648;
int p;
int o =0;
while(x){
p=x%10;
if(o>max/10||o<min/10)
return 0;
o*=10;
o+=p;
x/=10;
}
if(o>max||o<min)
return 0;
return o;
}
};